From 2121a45b69008f6465f48044c3d741a6cd047e57 Mon Sep 17 00:00:00 2001 From: James Talbert <jtalbert@iastate.edu> Date: Mon, 15 Oct 2018 16:59:15 -0500 Subject: [PATCH] Created a new XSDK project for the new hawdware platform. The code runs on the board, PWM is generated out (value unverified) but the I2C sensors are not attached, so there code fails quickly after that. --- quad/.gitignore | 3 +- quad/src/quad_app/initialize_components.c | 8 - quad/src/quad_app/type_def.h | 1 - quad/xsdk_workspace_vivado/.gitignore | 11 - quad/xsdk_workspace_vivado/README.md | 30 - quad/xsdk_workspace_vivado/quad_wrapper.hdf | Bin 514274 -> 0 bytes .../quad_wrapper_hw_platform_0/.project | 41 - .../pwm_recorder_v1_0/data/pwm_recorder.mdd | 10 - .../pwm_recorder_v1_0/data/pwm_recorder.tcl | 5 - .../data/pwm_signal_out.mdd | 10 - .../data/pwm_signal_out.tcl | 5 - .../quad_wrapper_hw_platform_0/ps7_init.c | 13125 -- .../quad_wrapper_hw_platform_0/ps7_init.h | 137 - .../quad_wrapper_hw_platform_0/ps7_init.html | 142728 --------------- .../quad_wrapper_hw_platform_0/ps7_init.tcl | 862 - .../quad_wrapper_hw_platform_0/ps7_init_gpl.c | 13116 -- .../quad_wrapper_hw_platform_0/ps7_init_gpl.h | 137 - .../quad_wrapper.bit | Bin 2083848 -> 0 bytes .../quad_wrapper_hw_platform_0/system.hdf | Bin 514274 -> 0 bytes .../xsdk_workspace_vivado/real_quad/.cproject | 214 +- .../real_quad/.gitignore | 8 +- quad/xsdk_workspace_vivado/real_quad/.project | 91 +- .../src/Xilinx.spec | 0 .../real_quad/src/hw_impl_zybo.c | 9 - .../real_quad/src/hw_impl_zybo_tests.c | 35 - .../real_quad/src/main.c | 1 - .../real_quad_fresh/.cproject | 202 - .../real_quad_fresh/.gitignore | 7 - .../real_quad_fresh/.project | 152 - .../org.eclipse.cdt.codan.core.prefs | 34 - .../real_quad_fresh/README.md | 10 - .../real_quad_fresh/ext/__CAUTION__.md | 12 - .../real_quad_fresh/src/hw_impl_zybo.c | 116 - .../real_quad_fresh/src/hw_impl_zybo.h | 105 - .../src/hw_impl_zybo_global_timer.c | 18 - .../real_quad_fresh/src/hw_impl_zybo_gps.c | 12 - .../real_quad_fresh/src/hw_impl_zybo_i2c.c | 485 - .../real_quad_fresh/src/hw_impl_zybo_imu.c | 265 - .../real_quad_fresh/src/hw_impl_zybo_lidar.c | 68 - .../src/hw_impl_zybo_mio7_led.c | 22 - .../real_quad_fresh/src/hw_impl_zybo_motor.c | 55 - .../src/hw_impl_zybo_optical_flow.c | 74 - .../src/hw_impl_zybo_rc_receiver.c | 40 - .../real_quad_fresh/src/hw_impl_zybo_system.c | 11 - .../real_quad_fresh/src/hw_impl_zybo_tests.c | 321 - .../real_quad_fresh/src/hw_impl_zybo_uart.c | 282 - .../real_quad_fresh/src/lscript.ld | 284 - .../real_quad_fresh/src/main.c | 72 - .../real_quad_fresh/src/platform.c | 112 - .../real_quad_fresh/src/platform.h | 27 - .../real_quad_fresh/src/platform_config.h | 10 - .../recorder_test/.cproject | 162 - .../recorder_test/.gitignore | 1 - .../recorder_test/.project | 26 - .../recorder_test/src/helloworld.c | 65 - .../recorder_test/src/lscript.ld | 288 - .../recorder_test/src/platform.c | 111 - .../recorder_test/src/platform.h | 41 - .../recorder_test/src/platform_config.h | 6 - .../recorder_test_bsp/.cproject | 13 - .../recorder_test_bsp/.project | 75 - .../recorder_test_bsp/.sdkproject | 4 - .../recorder_test_bsp/Makefile | 35 - .../recorder_test_bsp/system.mss | 249 - .../standalone_bsp_0/.cproject | 13 - .../standalone_bsp_0/.project | 75 - .../standalone_bsp_0/.sdkproject | 4 - .../standalone_bsp_0/Makefile | 35 - .../ps7_cortexa9_0/include/sleep.h | 50 - .../ps7_cortexa9_0/include/xttcps.h | 466 - .../ps7_cortexa9_0/include/xttcps_hw.h | 212 - .../libsrc/pwm_recorder_v1_0/src/Makefile | 26 - .../pwm_recorder_v1_0/src/pwm_recorder.c | 6 - .../pwm_recorder_v1_0/src/pwm_recorder.h | 79 - .../src/pwm_recorder_selftest.c | 60 - .../libsrc/pwm_signal_out_v1_0/src/Makefile | 26 - .../pwm_signal_out_v1_0/src/pwm_signal_out.c | 6 - .../pwm_signal_out_v1_0/src/pwm_signal_out.h | 79 - .../src/pwm_signal_out_selftest.c | 60 - .../libsrc/standalone_v6_2/src/sleep.h | 50 - .../libsrc/ttcps_v3_3/src/Makefile | 40 - .../libsrc/ttcps_v3_3/src/xttcps.c | 443 - .../libsrc/ttcps_v3_3/src/xttcps.h | 466 - .../libsrc/ttcps_v3_3/src/xttcps_g.c | 66 - .../libsrc/ttcps_v3_3/src/xttcps_hw.h | 212 - .../libsrc/ttcps_v3_3/src/xttcps_options.c | 243 - .../libsrc/ttcps_v3_3/src/xttcps_selftest.c | 109 - .../standalone_bsp_0/system.mss | 315 - .../system_bsp/.cproject | 6 +- .../xsdk_workspace_vivado/system_bsp/.project | 2 +- .../system_bsp/.sdkproject | 2 +- .../xsdk_workspace_vivado/system_bsp/Makefile | 4 +- .../include/_profile_timer_hw.h | 0 .../ps7_cortexa9_0/include/bspconfig.h | 7 +- .../ps7_cortexa9_0/include/mblaze_nt_types.h | 0 .../ps7_cortexa9_0/include/profile.h | 0 .../ps7_cortexa9_0/include}/pwm_recorder.h | 0 .../ps7_cortexa9_0/include}/pwm_signal_out.h | 0 .../system_bsp/ps7_cortexa9_0/include/sleep.h | 119 + .../ps7_cortexa9_0/include/smc.h | 0 .../ps7_cortexa9_0/include/vectors.h | 0 .../ps7_cortexa9_0/include}/xadcps.h | 4 +- .../ps7_cortexa9_0/include/xadcps_hw.h | 0 .../ps7_cortexa9_0/include/xbasic_types.h | 0 .../ps7_cortexa9_0/include}/xcoresightpsdcc.h | 2 +- .../ps7_cortexa9_0/include}/xcpu_cortexa9.h | 7 +- .../ps7_cortexa9_0/include}/xddrps.h | 4 +- .../ps7_cortexa9_0/include/xdebug.h | 0 .../ps7_cortexa9_0/include}/xdevcfg.h | 10 +- .../ps7_cortexa9_0/include/xdevcfg_hw.h | 0 .../ps7_cortexa9_0/include/xdmaps.h | 2 +- .../ps7_cortexa9_0/include/xdmaps_hw.h | 2 +- .../ps7_cortexa9_0/include}/xemacps.h | 13 +- .../ps7_cortexa9_0/include}/xemacps_bd.h | 2 +- .../ps7_cortexa9_0/include}/xemacps_bdring.h | 7 +- .../ps7_cortexa9_0/include/xemacps_hw.h | 2 +- .../ps7_cortexa9_0/include/xenv.h | 0 .../ps7_cortexa9_0/include/xenv_standalone.h | 0 .../ps7_cortexa9_0/include}/xgpio.h | 2 +- .../ps7_cortexa9_0/include}/xgpio_l.h | 2 +- .../ps7_cortexa9_0/include}/xgpiops.h | 11 +- .../ps7_cortexa9_0/include/xgpiops_hw.h | 2 +- .../ps7_cortexa9_0/include/xiicps.h | 6 +- .../ps7_cortexa9_0/include}/xiicps_hw.h | 2 +- .../ps7_cortexa9_0/include/xil_assert.h | 0 .../ps7_cortexa9_0/include/xil_cache.h | 0 .../ps7_cortexa9_0/include/xil_cache_l.h | 0 .../include/xil_cache_vxworks.h | 0 .../ps7_cortexa9_0/include}/xil_errata.h | 8 +- .../ps7_cortexa9_0/include}/xil_exception.h | 6 +- .../ps7_cortexa9_0/include/xil_hal.h | 0 .../ps7_cortexa9_0/include}/xil_io.h | 4 +- .../ps7_cortexa9_0/include/xil_macroback.h | 0 .../ps7_cortexa9_0/include/xil_mem.h | 0 .../include/xil_misc_psreset_api.h | 0 .../ps7_cortexa9_0/include/xil_mmu.h | 0 .../ps7_cortexa9_0/include}/xil_printf.h | 4 + .../ps7_cortexa9_0/include/xil_sleeptimer.h | 116 + .../ps7_cortexa9_0/include/xil_testcache.h | 0 .../ps7_cortexa9_0/include/xil_testio.h | 0 .../ps7_cortexa9_0/include/xil_testmem.h | 0 .../ps7_cortexa9_0/include/xil_types.h | 0 .../ps7_cortexa9_0/include/xl2cc.h | 0 .../ps7_cortexa9_0/include/xl2cc_counter.h | 0 .../ps7_cortexa9_0/include/xparameters.h | 179 +- .../ps7_cortexa9_0/include/xparameters_ps.h | 7 +- .../ps7_cortexa9_0/include/xplatform_info.h | 16 +- .../ps7_cortexa9_0/include/xpm_counter.h | 0 .../ps7_cortexa9_0/include/xpseudo_asm.h | 0 .../ps7_cortexa9_0/include}/xpseudo_asm_gcc.h | 7 + .../ps7_cortexa9_0/include/xqspips.h | 8 +- .../ps7_cortexa9_0/include/xqspips_hw.h | 2 +- .../ps7_cortexa9_0/include/xreg_cortexa9.h | 0 .../ps7_cortexa9_0/include/xscugic.h | 19 +- .../ps7_cortexa9_0/include/xscugic_hw.h | 10 +- .../ps7_cortexa9_0/include/xscutimer.h | 0 .../ps7_cortexa9_0/include/xscutimer_hw.h | 0 .../ps7_cortexa9_0/include/xscuwdt.h | 0 .../ps7_cortexa9_0/include/xscuwdt_hw.h | 0 .../ps7_cortexa9_0/include}/xsdps.h | 21 +- .../ps7_cortexa9_0/include}/xsdps_hw.h | 76 +- .../ps7_cortexa9_0/include/xstatus.h | 0 .../ps7_cortexa9_0/include}/xtime_l.h | 13 +- .../ps7_cortexa9_0/include/xuartps.h | 6 +- .../ps7_cortexa9_0/include}/xuartps_hw.h | 8 +- .../ps7_cortexa9_0/include}/xusbps.h | 4 +- .../ps7_cortexa9_0/include}/xusbps_endpoint.h | 2 +- .../ps7_cortexa9_0/include/xusbps_hw.h | 2 +- .../libsrc/coresightps_dcc_v1_4/src/Makefile | 0 .../src/xcoresightpsdcc.c | 2 +- .../src}/xcoresightpsdcc.h | 2 +- .../libsrc/cpu_cortexa9_v2_6}/src/Makefile | 0 .../cpu_cortexa9_v2_6/src}/xcpu_cortexa9.h | 7 +- .../libsrc/ddrps_v1_0/src/Makefile | 0 .../libsrc/ddrps_v1_0/src}/xddrps.h | 4 +- .../libsrc/devcfg_v3_5}/src/Makefile | 0 .../libsrc/devcfg_v3_5}/src/xdevcfg.c | 2 +- .../libsrc/devcfg_v3_5/src}/xdevcfg.h | 10 +- .../libsrc/devcfg_v3_5}/src/xdevcfg_g.c | 2 +- .../libsrc/devcfg_v3_5}/src/xdevcfg_hw.c | 2 +- .../libsrc/devcfg_v3_5}/src/xdevcfg_hw.h | 0 .../libsrc/devcfg_v3_5}/src/xdevcfg_intr.c | 2 +- .../devcfg_v3_5}/src/xdevcfg_selftest.c | 2 +- .../libsrc/devcfg_v3_5}/src/xdevcfg_sinit.c | 9 +- .../libsrc/dmaps_v2_3/src/Makefile | 0 .../libsrc/dmaps_v2_3/src/xdmaps.c | 2 +- .../libsrc/dmaps_v2_3/src/xdmaps.h | 2 +- .../libsrc/dmaps_v2_3/src/xdmaps_g.c | 2 +- .../libsrc/dmaps_v2_3/src/xdmaps_hw.c | 2 +- .../libsrc/dmaps_v2_3/src/xdmaps_hw.h | 2 +- .../libsrc/dmaps_v2_3/src/xdmaps_selftest.c | 2 +- .../libsrc/dmaps_v2_3/src/xdmaps_sinit.c | 2 +- .../libsrc/emacps_v3_7}/src/Makefile | 0 .../libsrc/emacps_v3_7}/src/xemacps.c | 5 +- .../libsrc/emacps_v3_7/src}/xemacps.h | 13 +- .../libsrc/emacps_v3_7/src}/xemacps_bd.h | 2 +- .../libsrc/emacps_v3_7}/src/xemacps_bdring.c | 29 +- .../libsrc/emacps_v3_7/src}/xemacps_bdring.h | 7 +- .../libsrc/emacps_v3_7}/src/xemacps_control.c | 2 +- .../libsrc/emacps_v3_7}/src/xemacps_g.c | 5 +- .../libsrc/emacps_v3_7}/src/xemacps_hw.c | 2 +- .../libsrc/emacps_v3_7}/src/xemacps_hw.h | 2 +- .../libsrc/emacps_v3_7}/src/xemacps_intr.c | 2 +- .../libsrc/emacps_v3_7}/src/xemacps_sinit.c | 2 +- .../libsrc/gpio_v4_3/src/Makefile | 0 .../libsrc/gpio_v4_3/src/xgpio.c | 2 +- .../libsrc/gpio_v4_3/src}/xgpio.h | 2 +- .../libsrc/gpio_v4_3/src/xgpio_extra.c | 2 +- .../libsrc/gpio_v4_3/src/xgpio_g.c | 14 +- .../libsrc/gpio_v4_3/src/xgpio_i.h | 2 +- .../libsrc/gpio_v4_3/src/xgpio_intr.c | 2 +- .../libsrc/gpio_v4_3/src}/xgpio_l.h | 2 +- .../libsrc/gpio_v4_3/src/xgpio_selftest.c | 2 +- .../libsrc/gpio_v4_3/src/xgpio_sinit.c | 2 +- .../libsrc/gpiops_v3_3}/src/Makefile | 0 .../libsrc/gpiops_v3_3}/src/xgpiops.c | 2 +- .../libsrc/gpiops_v3_3/src}/xgpiops.h | 11 +- .../libsrc/gpiops_v3_3}/src/xgpiops_g.c | 2 +- .../libsrc/gpiops_v3_3}/src/xgpiops_hw.c | 2 +- .../libsrc/gpiops_v3_3}/src/xgpiops_hw.h | 2 +- .../libsrc/gpiops_v3_3}/src/xgpiops_intr.c | 2 +- .../gpiops_v3_3}/src/xgpiops_selftest.c | 2 +- .../libsrc/gpiops_v3_3}/src/xgpiops_sinit.c | 2 +- .../libsrc/iicps_v3_7}/src/Makefile | 0 .../libsrc/iicps_v3_7}/src/xiicps.c | 2 +- .../libsrc/iicps_v3_7}/src/xiicps.h | 6 +- .../libsrc/iicps_v3_7}/src/xiicps_g.c | 2 +- .../libsrc/iicps_v3_7}/src/xiicps_hw.c | 2 +- .../libsrc/iicps_v3_7/src}/xiicps_hw.h | 2 +- .../libsrc/iicps_v3_7}/src/xiicps_intr.c | 2 +- .../libsrc/iicps_v3_7}/src/xiicps_master.c | 9 +- .../libsrc/iicps_v3_7}/src/xiicps_options.c | 2 +- .../libsrc/iicps_v3_7}/src/xiicps_selftest.c | 2 +- .../libsrc/iicps_v3_7}/src/xiicps_sinit.c | 2 +- .../libsrc/iicps_v3_7}/src/xiicps_slave.c | 2 +- .../libsrc}/pwm_recorder_v1_0/src/Makefile | 0 .../pwm_recorder_v1_0/src/pwm_recorder.c | 0 .../pwm_recorder_v1_0/src}/pwm_recorder.h | 0 .../src/pwm_recorder_selftest.c | 0 .../libsrc}/pwm_signal_out_v1_0/src/Makefile | 0 .../pwm_signal_out_v1_0/src/pwm_signal_out.c | 0 .../pwm_signal_out_v1_0/src}/pwm_signal_out.h | 0 .../src/pwm_signal_out_selftest.c | 0 .../libsrc/qspips_v3_4}/src/Makefile | 0 .../libsrc/qspips_v3_4}/src/xqspips.c | 2 +- .../libsrc/qspips_v3_4}/src/xqspips.h | 8 +- .../libsrc/qspips_v3_4}/src/xqspips_g.c | 2 +- .../libsrc/qspips_v3_4}/src/xqspips_hw.c | 2 +- .../libsrc/qspips_v3_4}/src/xqspips_hw.h | 2 +- .../libsrc/qspips_v3_4}/src/xqspips_options.c | 2 +- .../qspips_v3_4}/src/xqspips_selftest.c | 2 +- .../libsrc/qspips_v3_4}/src/xqspips_sinit.c | 2 +- .../libsrc/scugic_v3_9}/src/Makefile | 0 .../libsrc/scugic_v3_9}/src/xscugic.c | 78 +- .../libsrc/scugic_v3_9}/src/xscugic.h | 19 +- .../libsrc/scugic_v3_9}/src/xscugic_g.c | 5 +- .../libsrc/scugic_v3_9}/src/xscugic_hw.c | 77 +- .../libsrc/scugic_v3_9}/src/xscugic_hw.h | 10 +- .../libsrc/scugic_v3_9}/src/xscugic_intr.c | 2 +- .../scugic_v3_9}/src/xscugic_selftest.c | 2 +- .../libsrc/scugic_v3_9}/src/xscugic_sinit.c | 2 +- .../libsrc/scutimer_v2_1/src/Makefile | 0 .../libsrc/scutimer_v2_1/src/xscutimer.c | 0 .../libsrc/scutimer_v2_1/src/xscutimer.h | 0 .../libsrc/scutimer_v2_1/src/xscutimer_g.c | 2 +- .../libsrc/scutimer_v2_1/src/xscutimer_hw.h | 0 .../scutimer_v2_1/src/xscutimer_selftest.c | 0 .../scutimer_v2_1/src/xscutimer_sinit.c | 0 .../libsrc/scuwdt_v2_1/src/Makefile | 0 .../libsrc/scuwdt_v2_1/src/xscuwdt.c | 1 - .../libsrc/scuwdt_v2_1/src/xscuwdt.h | 0 .../libsrc/scuwdt_v2_1/src/xscuwdt_g.c | 2 +- .../libsrc/scuwdt_v2_1/src/xscuwdt_hw.h | 0 .../libsrc/scuwdt_v2_1/src/xscuwdt_selftest.c | 0 .../libsrc/scuwdt_v2_1/src/xscuwdt_sinit.c | 0 .../libsrc/sdps_v3_5}/src/Makefile | 0 .../libsrc/sdps_v3_5}/src/xsdps.c | 224 +- .../libsrc/sdps_v3_5/src}/xsdps.h | 21 +- .../libsrc/sdps_v3_5}/src/xsdps_g.c | 5 +- .../libsrc/sdps_v3_5/src}/xsdps_hw.h | 76 +- .../libsrc/sdps_v3_5}/src/xsdps_options.c | 105 +- .../libsrc/sdps_v3_5}/src/xsdps_sinit.c | 4 +- .../libsrc/standalone_v6_7}/src/Makefile | 0 .../libsrc/standalone_v6_7}/src/_exit.c | 0 .../libsrc/standalone_v6_7}/src/_open.c | 0 .../libsrc/standalone_v6_7}/src/_sbrk.c | 9 +- .../libsrc/standalone_v6_7}/src/abort.c | 0 .../libsrc/standalone_v6_7}/src/asm_vectors.S | 0 .../libsrc/standalone_v6_7}/src/boot.S | 0 .../libsrc/standalone_v6_7}/src/bspconfig.h | 7 +- .../libsrc/standalone_v6_7}/src/changelog.txt | 88 + .../libsrc/standalone_v6_7}/src/close.c | 0 .../libsrc/standalone_v6_7}/src/config.make | 0 .../libsrc/standalone_v6_7}/src/cpu_init.S | 0 .../libsrc/standalone_v6_7}/src/errno.c | 0 .../libsrc/standalone_v6_7}/src/fcntl.c | 0 .../libsrc/standalone_v6_7}/src/fstat.c | 0 .../libsrc/standalone_v6_7}/src/getpid.c | 0 .../libsrc/standalone_v6_7}/src/inbyte.c | 0 .../libsrc/standalone_v6_7}/src/isatty.c | 0 .../libsrc/standalone_v6_7}/src/kill.c | 0 .../libsrc/standalone_v6_7}/src/lseek.c | 0 .../libsrc/standalone_v6_7}/src/open.c | 0 .../libsrc/standalone_v6_7}/src/outbyte.c | 0 .../libsrc/standalone_v6_7}/src/print.c | 4 + .../standalone_v6_7}/src/profile/Makefile | 0 .../src/profile/_profile_clean.c | 0 .../src/profile/_profile_init.c | 0 .../src/profile/_profile_timer_hw.c | 0 .../src/profile/_profile_timer_hw.h | 0 .../standalone_v6_7}/src/profile/dummy.S | 0 .../src/profile/mblaze_nt_types.h | 0 .../standalone_v6_7}/src/profile/profile.h | 0 .../standalone_v6_7}/src/profile/profile_cg.c | 0 .../src/profile/profile_config.h | 0 .../src/profile/profile_hist.c | 0 .../src/profile/profile_mcount_arm.S | 0 .../src/profile/profile_mcount_mb.S | 0 .../src/profile/profile_mcount_ppc.S | 0 .../libsrc/standalone_v6_7}/src/putnum.c | 0 .../libsrc/standalone_v6_7}/src/read.c | 0 .../libsrc/standalone_v6_7}/src/sbrk.c | 6 +- .../libsrc/standalone_v6_7}/src/sleep.c | 30 +- .../libsrc/standalone_v6_7/src/sleep.h | 119 + .../libsrc/standalone_v6_7}/src/smc.h | 0 .../standalone_v6_7}/src/translation_table.S | 0 .../libsrc/standalone_v6_7}/src/unlink.c | 0 .../libsrc/standalone_v6_7}/src/usleep.c | 20 +- .../libsrc/standalone_v6_7}/src/vectors.c | 0 .../libsrc/standalone_v6_7}/src/vectors.h | 0 .../libsrc/standalone_v6_7}/src/write.c | 11 +- .../standalone_v6_7}/src/xbasic_types.h | 0 .../libsrc/standalone_v6_7}/src/xdebug.h | 0 .../libsrc/standalone_v6_7}/src/xenv.h | 0 .../standalone_v6_7}/src/xenv_standalone.h | 0 .../libsrc/standalone_v6_7}/src/xil-crt0.S | 11 +- .../libsrc/standalone_v6_7}/src/xil_assert.c | 0 .../libsrc/standalone_v6_7}/src/xil_assert.h | 0 .../libsrc/standalone_v6_7}/src/xil_cache.c | 36 +- .../libsrc/standalone_v6_7}/src/xil_cache.h | 0 .../libsrc/standalone_v6_7}/src/xil_cache_l.h | 0 .../standalone_v6_7}/src/xil_cache_vxworks.h | 0 .../libsrc/standalone_v6_7/src}/xil_errata.h | 8 +- .../standalone_v6_7}/src/xil_exception.c | 43 +- .../standalone_v6_7/src}/xil_exception.h | 6 +- .../libsrc/standalone_v6_7}/src/xil_hal.h | 0 .../libsrc/standalone_v6_7}/src/xil_io.c | 0 .../libsrc/standalone_v6_7/src}/xil_io.h | 4 +- .../standalone_v6_7}/src/xil_macroback.h | 0 .../libsrc/standalone_v6_7}/src/xil_mem.c | 0 .../libsrc/standalone_v6_7}/src/xil_mem.h | 0 .../src/xil_misc_psreset_api.c | 0 .../src/xil_misc_psreset_api.h | 0 .../libsrc/standalone_v6_7}/src/xil_mmu.c | 0 .../libsrc/standalone_v6_7}/src/xil_mmu.h | 0 .../libsrc/standalone_v6_7}/src/xil_printf.c | 13 +- .../libsrc/standalone_v6_7/src}/xil_printf.h | 4 + .../standalone_v6_7/src/xil_sleepcommon.c} | 96 +- .../standalone_v6_7/src/xil_sleeptimer.c | 162 + .../standalone_v6_7/src/xil_sleeptimer.h | 116 + .../standalone_v6_7}/src/xil_testcache.c | 0 .../standalone_v6_7}/src/xil_testcache.h | 0 .../libsrc/standalone_v6_7}/src/xil_testio.c | 0 .../libsrc/standalone_v6_7}/src/xil_testio.h | 0 .../libsrc/standalone_v6_7}/src/xil_testmem.c | 0 .../libsrc/standalone_v6_7}/src/xil_testmem.h | 0 .../libsrc/standalone_v6_7}/src/xil_types.h | 0 .../libsrc/standalone_v6_7}/src/xl2cc.h | 0 .../standalone_v6_7}/src/xl2cc_counter.c | 0 .../standalone_v6_7}/src/xl2cc_counter.h | 0 .../standalone_v6_7}/src/xparameters_ps.h | 7 +- .../standalone_v6_7}/src/xplatform_info.c | 38 +- .../standalone_v6_7}/src/xplatform_info.h | 16 +- .../libsrc/standalone_v6_7}/src/xpm_counter.c | 0 .../libsrc/standalone_v6_7}/src/xpm_counter.h | 0 .../libsrc/standalone_v6_7}/src/xpseudo_asm.h | 0 .../standalone_v6_7/src}/xpseudo_asm_gcc.h | 7 + .../standalone_v6_7}/src/xreg_cortexa9.h | 0 .../libsrc/standalone_v6_7}/src/xstatus.h | 0 .../libsrc/standalone_v6_7}/src/xtime_l.c | 0 .../libsrc/standalone_v6_7/src}/xtime_l.h | 13 +- .../libsrc/uartps_v3_6}/src/Makefile | 0 .../libsrc/uartps_v3_6}/src/xuartps.c | 5 +- .../libsrc/uartps_v3_6}/src/xuartps.h | 6 +- .../libsrc/uartps_v3_6}/src/xuartps_g.c | 2 +- .../libsrc/uartps_v3_6}/src/xuartps_hw.c | 2 +- .../libsrc/uartps_v3_6/src}/xuartps_hw.h | 8 +- .../libsrc/uartps_v3_6}/src/xuartps_intr.c | 2 +- .../libsrc/uartps_v3_6}/src/xuartps_options.c | 2 +- .../uartps_v3_6}/src/xuartps_selftest.c | 2 +- .../libsrc/uartps_v3_6}/src/xuartps_sinit.c | 2 +- .../libsrc/usbps_v2_4/src/Makefile | 0 .../libsrc/usbps_v2_4/src/xusbps.c | 2 +- .../libsrc/usbps_v2_4/src}/xusbps.h | 4 +- .../libsrc/usbps_v2_4/src/xusbps_endpoint.c | 2 +- .../libsrc/usbps_v2_4/src}/xusbps_endpoint.h | 2 +- .../libsrc/usbps_v2_4/src/xusbps_g.c | 2 +- .../libsrc/usbps_v2_4/src/xusbps_hw.c | 2 +- .../libsrc/usbps_v2_4/src/xusbps_hw.h | 2 +- .../libsrc/usbps_v2_4/src/xusbps_intr.c | 2 +- .../libsrc/usbps_v2_4/src/xusbps_sinit.c | 2 +- .../libsrc/xadcps_v2_2/src/Makefile | 0 .../libsrc/xadcps_v2_2/src/xadcps.c | 0 .../libsrc/xadcps_v2_2/src}/xadcps.h | 4 +- .../libsrc/xadcps_v2_2/src/xadcps_g.c | 2 +- .../libsrc/xadcps_v2_2/src/xadcps_hw.h | 0 .../libsrc/xadcps_v2_2/src/xadcps_intr.c | 0 .../libsrc/xadcps_v2_2/src/xadcps_selftest.c | 0 .../libsrc/xadcps_v2_2/src/xadcps_sinit.c | 0 .../system_bsp/system.mss | 42 +- 410 files changed, 2216 insertions(+), 177969 deletions(-) delete mode 100644 quad/xsdk_workspace_vivado/.gitignore delete mode 100644 quad/xsdk_workspace_vivado/README.md delete mode 100644 quad/xsdk_workspace_vivado/quad_wrapper.hdf delete mode 100644 quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/.project delete mode 100644 quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_recorder_v1_0/data/pwm_recorder.mdd delete mode 100644 quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_recorder_v1_0/data/pwm_recorder.tcl delete mode 100644 quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_signal_out_v1_0/data/pwm_signal_out.mdd delete mode 100644 quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_signal_out_v1_0/data/pwm_signal_out.tcl delete mode 100644 quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/ps7_init.c delete mode 100644 quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/ps7_init.h delete mode 100644 quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/ps7_init.html delete mode 100644 quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/ps7_init.tcl delete mode 100644 quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/ps7_init_gpl.c delete mode 100644 quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/ps7_init_gpl.h delete mode 100644 quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/quad_wrapper.bit delete mode 100644 quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/system.hdf rename quad/xsdk_workspace_vivado/{recorder_test => real_quad}/src/Xilinx.spec (100%) delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/.cproject delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/.gitignore delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/.project delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/.settings/org.eclipse.cdt.codan.core.prefs delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/README.md delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/ext/__CAUTION__.md delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo.c delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo.h delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_global_timer.c delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_gps.c delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_i2c.c delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_imu.c delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_lidar.c delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_mio7_led.c delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_motor.c delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_optical_flow.c delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_rc_receiver.c delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_system.c delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_tests.c delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_uart.c delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/src/lscript.ld delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/src/main.c delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/src/platform.c delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/src/platform.h delete mode 100644 quad/xsdk_workspace_vivado/real_quad_fresh/src/platform_config.h delete mode 100644 quad/xsdk_workspace_vivado/recorder_test/.cproject delete mode 100644 quad/xsdk_workspace_vivado/recorder_test/.gitignore delete mode 100644 quad/xsdk_workspace_vivado/recorder_test/.project delete mode 100644 quad/xsdk_workspace_vivado/recorder_test/src/helloworld.c delete mode 100644 quad/xsdk_workspace_vivado/recorder_test/src/lscript.ld delete mode 100644 quad/xsdk_workspace_vivado/recorder_test/src/platform.c delete mode 100644 quad/xsdk_workspace_vivado/recorder_test/src/platform.h delete mode 100644 quad/xsdk_workspace_vivado/recorder_test/src/platform_config.h delete mode 100644 quad/xsdk_workspace_vivado/recorder_test_bsp/.cproject delete mode 100644 quad/xsdk_workspace_vivado/recorder_test_bsp/.project delete mode 100644 quad/xsdk_workspace_vivado/recorder_test_bsp/.sdkproject delete mode 100644 quad/xsdk_workspace_vivado/recorder_test_bsp/Makefile delete mode 100644 quad/xsdk_workspace_vivado/recorder_test_bsp/system.mss delete mode 100644 quad/xsdk_workspace_vivado/standalone_bsp_0/.cproject delete mode 100644 quad/xsdk_workspace_vivado/standalone_bsp_0/.project delete mode 100644 quad/xsdk_workspace_vivado/standalone_bsp_0/.sdkproject delete mode 100644 quad/xsdk_workspace_vivado/standalone_bsp_0/Makefile delete mode 100644 quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/sleep.h delete mode 100644 quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xttcps.h delete mode 100644 quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xttcps_hw.h delete mode 100644 quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src/Makefile delete mode 100644 quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src/pwm_recorder.c delete mode 100644 quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src/pwm_recorder.h delete mode 100644 quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src/pwm_recorder_selftest.c delete mode 100644 quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src/Makefile delete mode 100644 quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src/pwm_signal_out.c delete mode 100644 quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src/pwm_signal_out.h delete mode 100644 quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src/pwm_signal_out_selftest.c delete mode 100644 quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/sleep.h delete mode 100644 quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/Makefile delete mode 100644 quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps.c delete mode 100644 quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps.h delete mode 100644 quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps_g.c delete mode 100644 quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps_hw.h delete mode 100644 quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps_options.c delete mode 100644 quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps_selftest.c delete mode 100644 quad/xsdk_workspace_vivado/standalone_bsp_0/system.mss rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/_profile_timer_hw.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/bspconfig.h (89%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/mblaze_nt_types.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/profile.h (100%) rename quad/xsdk_workspace_vivado/{quad_wrapper_hw_platform_0/drivers/pwm_recorder_v1_0/src => system_bsp/ps7_cortexa9_0/include}/pwm_recorder.h (100%) rename quad/xsdk_workspace_vivado/{quad_wrapper_hw_platform_0/drivers/pwm_signal_out_v1_0/src => system_bsp/ps7_cortexa9_0/include}/pwm_signal_out.h (100%) create mode 100644 quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/sleep.h rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/smc.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/vectors.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/xadcps_v2_2/src => system_bsp/ps7_cortexa9_0/include}/xadcps.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xadcps_hw.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xbasic_types.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/coresightps_dcc_v1_4/src => system_bsp/ps7_cortexa9_0/include}/xcoresightpsdcc.h (98%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_4/src => system_bsp/ps7_cortexa9_0/include}/xcpu_cortexa9.h (86%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/ddrps_v1_0/src => system_bsp/ps7_cortexa9_0/include}/xddrps.h (96%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xdebug.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src => system_bsp/ps7_cortexa9_0/include}/xdevcfg.h (97%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xdevcfg_hw.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xdmaps.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xdmaps_hw.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src => system_bsp/ps7_cortexa9_0/include}/xemacps.h (98%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src => system_bsp/ps7_cortexa9_0/include}/xemacps_bd.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src => system_bsp/ps7_cortexa9_0/include}/xemacps_bdring.h (97%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xemacps_hw.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xenv.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xenv_standalone.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src => system_bsp/ps7_cortexa9_0/include}/xgpio.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src => system_bsp/ps7_cortexa9_0/include}/xgpio_l.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src => system_bsp/ps7_cortexa9_0/include}/xgpiops.h (95%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xgpiops_hw.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xiicps.h (98%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src => system_bsp/ps7_cortexa9_0/include}/xiicps_hw.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xil_assert.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xil_cache.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xil_cache_l.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xil_cache_vxworks.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src => system_bsp/ps7_cortexa9_0/include}/xil_errata.h (96%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src => system_bsp/ps7_cortexa9_0/include}/xil_exception.h (97%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xil_hal.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src => system_bsp/ps7_cortexa9_0/include}/xil_io.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xil_macroback.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xil_mem.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xil_misc_psreset_api.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xil_mmu.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src => system_bsp/ps7_cortexa9_0/include}/xil_printf.h (91%) create mode 100644 quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_sleeptimer.h rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xil_testcache.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xil_testio.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xil_testmem.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xil_types.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xl2cc.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xl2cc_counter.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xparameters.h (81%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xparameters_ps.h (98%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xplatform_info.h (88%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xpm_counter.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xpseudo_asm.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src => system_bsp/ps7_cortexa9_0/include}/xpseudo_asm_gcc.h (96%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xqspips.h (98%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xqspips_hw.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xreg_cortexa9.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xscugic.h (92%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xscugic_hw.h (98%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xscutimer.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xscutimer_hw.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xscuwdt.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xscuwdt_hw.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2/src => system_bsp/ps7_cortexa9_0/include}/xsdps.h (94%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2/src => system_bsp/ps7_cortexa9_0/include}/xsdps_hw.h (96%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xstatus.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src => system_bsp/ps7_cortexa9_0/include}/xtime_l.h (90%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xuartps.h (98%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src => system_bsp/ps7_cortexa9_0/include}/xuartps_hw.h (98%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src => system_bsp/ps7_cortexa9_0/include}/xusbps.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src => system_bsp/ps7_cortexa9_0/include}/xusbps_endpoint.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/include/xusbps_hw.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/coresightps_dcc_v1_4/src/Makefile (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/coresightps_dcc_v1_4/src/xcoresightpsdcc.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/coresightps_dcc_v1_4/src}/xcoresightpsdcc.h (98%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_4 => system_bsp/ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_6}/src/Makefile (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_6/src}/xcpu_cortexa9.h (86%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/ddrps_v1_0/src/Makefile (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/ddrps_v1_0/src}/xddrps.h (96%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5}/src/Makefile (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5}/src/xdevcfg.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src}/xdevcfg.h (97%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5}/src/xdevcfg_g.c (96%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5}/src/xdevcfg_hw.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5}/src/xdevcfg_hw.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5}/src/xdevcfg_intr.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5}/src/xdevcfg_selftest.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5}/src/xdevcfg_sinit.c (93%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/Makefile (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_g.c (96%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_hw.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_hw.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_selftest.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_sinit.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7}/src/Makefile (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7}/src/xemacps.c (98%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src}/xemacps.h (98%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src}/xemacps_bd.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7}/src/xemacps_bdring.c (97%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src}/xemacps_bdring.h (97%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7}/src/xemacps_control.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7}/src/xemacps_g.c (93%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7}/src/xemacps_hw.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7}/src/xemacps_hw.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7}/src/xemacps_intr.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7}/src/xemacps_sinit.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/gpio_v4_3/src/Makefile (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src}/xgpio.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_extra.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_g.c (86%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_i.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_intr.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src}/xgpio_l.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_selftest.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_sinit.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2 => system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3}/src/Makefile (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2 => system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3}/src/xgpiops.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src}/xgpiops.h (95%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2 => system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3}/src/xgpiops_g.c (96%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2 => system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3}/src/xgpiops_hw.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2 => system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3}/src/xgpiops_hw.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2 => system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3}/src/xgpiops_intr.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2 => system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3}/src/xgpiops_selftest.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2 => system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3}/src/xgpiops_sinit.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5 => system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7}/src/Makefile (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5 => system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7}/src/xiicps.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5 => system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7}/src/xiicps.h (98%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5 => system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7}/src/xiicps_g.c (97%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5 => system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7}/src/xiicps_hw.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src}/xiicps_hw.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5 => system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7}/src/xiicps_intr.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5 => system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7}/src/xiicps_master.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5 => system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7}/src/xiicps_options.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5 => system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7}/src/xiicps_selftest.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5 => system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7}/src/xiicps_sinit.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5 => system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7}/src/xiicps_slave.c (99%) rename quad/xsdk_workspace_vivado/{quad_wrapper_hw_platform_0/drivers => system_bsp/ps7_cortexa9_0/libsrc}/pwm_recorder_v1_0/src/Makefile (100%) rename quad/xsdk_workspace_vivado/{quad_wrapper_hw_platform_0/drivers => system_bsp/ps7_cortexa9_0/libsrc}/pwm_recorder_v1_0/src/pwm_recorder.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src}/pwm_recorder.h (100%) rename quad/xsdk_workspace_vivado/{quad_wrapper_hw_platform_0/drivers => system_bsp/ps7_cortexa9_0/libsrc}/pwm_recorder_v1_0/src/pwm_recorder_selftest.c (100%) rename quad/xsdk_workspace_vivado/{quad_wrapper_hw_platform_0/drivers => system_bsp/ps7_cortexa9_0/libsrc}/pwm_signal_out_v1_0/src/Makefile (100%) rename quad/xsdk_workspace_vivado/{quad_wrapper_hw_platform_0/drivers => system_bsp/ps7_cortexa9_0/libsrc}/pwm_signal_out_v1_0/src/pwm_signal_out.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src}/pwm_signal_out.h (100%) rename quad/xsdk_workspace_vivado/{quad_wrapper_hw_platform_0/drivers => system_bsp/ps7_cortexa9_0/libsrc}/pwm_signal_out_v1_0/src/pwm_signal_out_selftest.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3 => system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4}/src/Makefile (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3 => system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4}/src/xqspips.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3 => system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4}/src/xqspips.h (98%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3 => system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4}/src/xqspips_g.c (96%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3 => system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4}/src/xqspips_hw.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3 => system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4}/src/xqspips_hw.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3 => system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4}/src/xqspips_options.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3 => system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4}/src/xqspips_selftest.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3 => system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4}/src/xqspips_sinit.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6 => system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9}/src/Makefile (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6 => system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9}/src/xscugic.c (93%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6 => system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9}/src/xscugic.h (92%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6 => system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9}/src/xscugic_g.c (92%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6 => system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9}/src/xscugic_hw.c (89%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6 => system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9}/src/xscugic_hw.h (98%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6 => system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9}/src/xscugic_intr.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6 => system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9}/src/xscugic_selftest.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6 => system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9}/src/xscugic_sinit.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/Makefile (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer_g.c (96%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer_hw.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer_selftest.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer_sinit.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/Makefile (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt_g.c (96%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt_hw.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt_selftest.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt_sinit.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2 => system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5}/src/Makefile (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2 => system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5}/src/xsdps.c (88%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5/src}/xsdps.h (94%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2 => system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5}/src/xsdps_g.c (94%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5/src}/xsdps_hw.h (96%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2 => system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5}/src/xsdps_options.c (94%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2 => system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5}/src/xsdps_sinit.c (97%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/Makefile (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/_exit.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/_open.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/_sbrk.c (95%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/abort.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/asm_vectors.S (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/boot.S (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/bspconfig.h (89%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/changelog.txt (82%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/close.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/config.make (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/cpu_init.S (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/errno.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/fcntl.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/fstat.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/getpid.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/inbyte.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/isatty.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/kill.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/lseek.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/open.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/outbyte.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/print.c (90%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/profile/Makefile (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/profile/_profile_clean.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/profile/_profile_init.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/profile/_profile_timer_hw.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/profile/_profile_timer_hw.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/profile/dummy.S (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/profile/mblaze_nt_types.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/profile/profile.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/profile/profile_cg.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/profile/profile_config.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/profile/profile_hist.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/profile/profile_mcount_arm.S (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/profile/profile_mcount_mb.S (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/profile/profile_mcount_ppc.S (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/putnum.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/read.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/sbrk.c (94%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/sleep.c (80%) create mode 100644 quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/sleep.h rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/smc.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/translation_table.S (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/unlink.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/usleep.c (83%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/vectors.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/vectors.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/write.c (93%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xbasic_types.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xdebug.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xenv.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xenv_standalone.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil-crt0.S (91%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil_assert.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil_assert.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil_cache.c (97%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil_cache.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil_cache_l.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil_cache_vxworks.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src}/xil_errata.h (96%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil_exception.c (86%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src}/xil_exception.h (97%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil_hal.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil_io.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src}/xil_io.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil_macroback.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil_mem.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil_mem.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil_misc_psreset_api.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil_misc_psreset_api.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil_mmu.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil_mmu.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil_printf.c (98%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src}/xil_printf.h (91%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps_sinit.c => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_sleepcommon.c} (56%) create mode 100644 quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_sleeptimer.c create mode 100644 quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_sleeptimer.h rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil_testcache.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil_testcache.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil_testio.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil_testio.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil_testmem.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil_testmem.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xil_types.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xl2cc.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xl2cc_counter.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xl2cc_counter.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xparameters_ps.h (98%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xplatform_info.c (77%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xplatform_info.h (88%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xpm_counter.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xpm_counter.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xpseudo_asm.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src}/xpseudo_asm_gcc.h (96%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xreg_cortexa9.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xstatus.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2 => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7}/src/xtime_l.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src}/xtime_l.h (90%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6}/src/Makefile (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6}/src/xuartps.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6}/src/xuartps.h (98%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6}/src/xuartps_g.c (97%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6}/src/xuartps_hw.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src}/xuartps_hw.h (98%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6}/src/xuartps_intr.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6}/src/xuartps_options.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6}/src/xuartps_selftest.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4 => system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6}/src/xuartps_sinit.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/usbps_v2_4/src/Makefile (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src}/xusbps.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_endpoint.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src}/xusbps_endpoint.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_g.c (96%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_hw.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_hw.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_intr.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_sinit.c (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/Makefile (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0/ps7_cortexa9_0/include => system_bsp/ps7_cortexa9_0/libsrc/xadcps_v2_2/src}/xadcps.h (99%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_g.c (96%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_hw.h (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_intr.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_selftest.c (100%) rename quad/xsdk_workspace_vivado/{standalone_bsp_0 => system_bsp}/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_sinit.c (100%) diff --git a/quad/.gitignore b/quad/.gitignore index adada7469..0b27dfb49 100644 --- a/quad/.gitignore +++ b/quad/.gitignore @@ -15,4 +15,5 @@ xsdk_workspace_vivado/design_1_wrapper_hw_platform_0/ **/xelab.pb **/xelab.log **/vivado_pid*.str -**/*.tmp \ No newline at end of file +**/*.tmp +**/*.o \ No newline at end of file diff --git a/quad/src/quad_app/initialize_components.c b/quad/src/quad_app/initialize_components.c index edccbbbf8..4805f1d64 100644 --- a/quad/src/quad_app/initialize_components.c +++ b/quad/src/quad_app/initialize_components.c @@ -54,14 +54,6 @@ int init_structs(modular_structs_t *structs) { // Initialize loop timers struct TimerDriver *global_timer = &structs->hardware_struct.global_timer; - struct TimerDriver *axi_timer = &structs->hardware_struct.axi_timer; - if (global_timer->reset(global_timer)) { - return -1; - } - if (axi_timer->reset(axi_timer)) { - return -1; - } - timer_init_globals(global_timer, axi_timer); // Initialize UART0 struct UARTDriver *uart = &structs->hardware_struct.uart_0; diff --git a/quad/src/quad_app/type_def.h b/quad/src/quad_app/type_def.h index 4d61cb1f0..52b99b536 100644 --- a/quad/src/quad_app/type_def.h +++ b/quad/src/quad_app/type_def.h @@ -493,7 +493,6 @@ typedef struct hardware_t { struct GPSDriver gps; struct CommDriver comm; struct TimerDriver global_timer; - struct TimerDriver axi_timer; struct LEDDriver mio7_led; struct SystemDriver sys; struct IMUDriver imu; diff --git a/quad/xsdk_workspace_vivado/.gitignore b/quad/xsdk_workspace_vivado/.gitignore deleted file mode 100644 index ca597b529..000000000 --- a/quad/xsdk_workspace_vivado/.gitignore +++ /dev/null @@ -1,11 +0,0 @@ -SDK.log -test.log -.metadata/ -system_bsp/ps7_cortexa9_0/ -system_bsp/libgen.log -zybo_fsbl_bsp/ps7_cortexa9_0/ -zybo_fsbl_bsp/libgen.log -zybo_fsbl/Release -zybo_fsbl/Debug -zybo_fsbl/bootimage -TAGS diff --git a/quad/xsdk_workspace_vivado/README.md b/quad/xsdk_workspace_vivado/README.md deleted file mode 100644 index bddc1b7c5..000000000 --- a/quad/xsdk_workspace_vivado/README.md +++ /dev/null @@ -1,30 +0,0 @@ -# XSDK Workspace - -This directory is reserved for Xilinx XSDK projects and their respective hardware platforms. - -## What is XSDK - -XSDK is a development tool made by Xilinx to create the files necessary to boot - the hardware and software on the FPGA. It includes a test editor based on - eclipse so the tools should feel vaguely familiar. - Use our [how to use XSDK document](../doc/how_to_use_XSDK.md) or - [XSDK documentation webpage](https://www.xilinx.com/support/documentation/sw_manuals/xilinx2015_1/SDK_Doc/index.html) - - -## Setup -XSDK, being based on Eclipse, is rather fragile, so do yourself a favor -and read this section so things get setup correctly. - -1. When you first open eclipse, select this directory, `xsdk_workspace`, as - your workspace (see what we did there?). - -2. When you get to your workbench, your project pane should be empty. To - add these projects, right-click on the project pane, and click on something - like "import projects". - - 1. Select "Import Existing Projects" (wherever that is) - 2. And then select the xsdk_workspace as the folder where you want to import - projects. Add them all. - -3. If things are going swimmingly, then you should be able to build everything - and be off on your merry embedded endeavors. diff --git a/quad/xsdk_workspace_vivado/quad_wrapper.hdf b/quad/xsdk_workspace_vivado/quad_wrapper.hdf deleted file mode 100644 index 1cc1dd50b83f139908f6267bd401a6d9bbc35cf6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 514274 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%0D$O25dl; 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	i8Rv^qY{I38g|;S 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	BrhTv$$D) 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%0Dpnkiir1P46}m^}p| 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	SZwCsPl;XyzDTaI`GBSG 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 diff --git a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/.project b/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/.project deleted file mode 100644 index 4b136bb87..000000000 --- a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/.project +++ /dev/null @@ -1,41 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<projectDescription> - <name>quad_wrapper_hw_platform_0</name> - <comment>Created by SDK v2017.1</comment> - <projects> - </projects> - <buildSpec> - </buildSpec> - <natures> - <nature>com.xilinx.sdk.hw.HwProject</nature> - </natures> - <filteredResources> - <filter> - <id>1512948894437</id> - <name></name> - <type>6</type> - <matcher> - <id>org.eclipse.ui.ide.multiFilter</id> - <arguments>1.0-name-matches-false-false-*.xml</arguments> - </matcher> - </filter> - <filter> - <id>1512948894441</id> - <name></name> - <type>6</type> - <matcher> - <id>org.eclipse.ui.ide.multiFilter</id> - <arguments>1.0-name-matches-false-false-*.svd</arguments> - </matcher> - </filter> - <filter> - <id>1512948894444</id> - <name></name> - <type>6</type> - <matcher> - <id>org.eclipse.ui.ide.multiFilter</id> - <arguments>1.0-name-matches-false-false-*.hwh</arguments> - </matcher> - </filter> - </filteredResources> -</projectDescription> diff --git a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_recorder_v1_0/data/pwm_recorder.mdd b/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_recorder_v1_0/data/pwm_recorder.mdd deleted file mode 100644 index 2e60f72be..000000000 --- a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_recorder_v1_0/data/pwm_recorder.mdd +++ /dev/null @@ -1,10 +0,0 @@ - - -OPTION psf_version = 2.1; - -BEGIN DRIVER pwm_recorder - OPTION supported_peripherals = (pwm_recorder); - OPTION copyfiles = all; - OPTION VERSION = 1.0; - OPTION NAME = pwm_recorder; -END DRIVER diff --git a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_recorder_v1_0/data/pwm_recorder.tcl b/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_recorder_v1_0/data/pwm_recorder.tcl deleted file mode 100644 index 7b50311bc..000000000 --- a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_recorder_v1_0/data/pwm_recorder.tcl +++ /dev/null @@ -1,5 +0,0 @@ - - -proc generate {drv_handle} { - xdefine_include_file $drv_handle "xparameters.h" "pwm_recorder" "NUM_INSTANCES" "DEVICE_ID" "C_S_AXI_BASEADDR" "C_S_AXI_HIGHADDR" -} diff --git a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_signal_out_v1_0/data/pwm_signal_out.mdd b/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_signal_out_v1_0/data/pwm_signal_out.mdd deleted file mode 100644 index c3b8f3c47..000000000 --- a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_signal_out_v1_0/data/pwm_signal_out.mdd +++ /dev/null @@ -1,10 +0,0 @@ - - -OPTION psf_version = 2.1; - -BEGIN DRIVER pwm_signal_out - OPTION supported_peripherals = (pwm_signal_out); - OPTION copyfiles = all; - OPTION VERSION = 1.0; - OPTION NAME = pwm_signal_out; -END DRIVER diff --git a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_signal_out_v1_0/data/pwm_signal_out.tcl b/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_signal_out_v1_0/data/pwm_signal_out.tcl deleted file mode 100644 index 14022c201..000000000 --- a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_signal_out_v1_0/data/pwm_signal_out.tcl +++ /dev/null @@ -1,5 +0,0 @@ - - -proc generate {drv_handle} { - xdefine_include_file $drv_handle "xparameters.h" "pwm_signal_out" "NUM_INSTANCES" "DEVICE_ID" "C_S_AXI_BASEADDR" "C_S_AXI_HIGHADDR" -} diff --git a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/ps7_init.c b/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/ps7_init.c deleted file mode 100644 index 94bc6c494..000000000 --- a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/ps7_init.c +++ /dev/null @@ -1,13125 +0,0 @@ -/****************************************************************************** -* -* (c) Copyright 2010-2014 Xilinx, Inc. All rights reserved. -* -* Permission is hereby granted, free of charge, to any person obtaining a copy of this -* software and associated documentation files (the "Software"), to deal in the Software -* without restriction, including without limitation the rights to use, copy, modify, merge, -* publish, distribute, sublicense, and/or sell copies of the Software, and to permit -* persons to whom the Software is furnished to do so, subject to the following conditions: -* -* The above copyright notice and this permission notice shall be included in all copies or -* substantial portions of the Software. -* -* Use of the Software is limited solely to applications: (a) running on a Xilinx device, or -* (b) that interact with a Xilinx device through a bus or interconnect. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING -* BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -* NONINFRINGEMENT. IN NO EVENT SHALL THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -* -* Except as contained in this notice, the name of the Xilinx shall not be used in advertising or -* otherwise to promote the sale, use or other dealings in this Software without prior written -* authorization from Xilinx. -* -******************************************************************************/ -/****************************************************************************/ -/** -* -* @file ps7_init.c -* -* This file is automatically generated -* -*****************************************************************************/ - -#include "ps7_init.h" - -unsigned long ps7_pll_init_data_3_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: PLL SLCR REGISTERS - // .. .. START: ARM PLL INIT - // .. .. PLL_RES = 0xc - // .. .. ==> 0XF8000110[7:4] = 0x0000000CU - // .. .. ==> MASK : 0x000000F0U VAL : 0x000000C0U - // .. .. PLL_CP = 0x2 - // .. .. ==> 0XF8000110[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. LOCK_CNT = 0x177 - // .. .. ==> 0XF8000110[21:12] = 0x00000177U - // .. .. ==> MASK : 0x003FF000U VAL : 0x00177000U - // .. .. - EMIT_MASKWRITE(0XF8000110, 0x003FFFF0U ,0x001772C0U), - // .. .. .. START: UPDATE FB_DIV - // .. .. .. PLL_FDIV = 0x1a - // .. .. .. ==> 0XF8000100[18:12] = 0x0000001AU - // .. .. .. ==> MASK : 0x0007F000U VAL : 0x0001A000U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x0007F000U ,0x0001A000U), - // .. .. .. FINISH: UPDATE FB_DIV - // .. .. .. START: BY PASS PLL - // .. .. .. PLL_BYPASS_FORCE = 1 - // .. .. .. ==> 0XF8000100[4:4] = 0x00000001U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x00000010U ,0x00000010U), - // .. .. .. FINISH: BY PASS PLL - // .. .. .. START: ASSERT RESET - // .. .. .. PLL_RESET = 1 - // .. .. .. ==> 0XF8000100[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x00000001U ,0x00000001U), - // .. .. .. FINISH: ASSERT RESET - // .. .. .. START: DEASSERT RESET - // .. .. .. PLL_RESET = 0 - // .. .. .. ==> 0XF8000100[0:0] = 0x00000000U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x00000001U ,0x00000000U), - // .. .. .. FINISH: DEASSERT RESET - // .. .. .. START: CHECK PLL STATUS - // .. .. .. ARM_PLL_LOCK = 1 - // .. .. .. ==> 0XF800010C[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. - EMIT_MASKPOLL(0XF800010C, 0x00000001U), - // .. .. .. FINISH: CHECK PLL STATUS - // .. .. .. START: REMOVE PLL BY PASS - // .. .. .. PLL_BYPASS_FORCE = 0 - // .. .. .. ==> 0XF8000100[4:4] = 0x00000000U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x00000010U ,0x00000000U), - // .. .. .. FINISH: REMOVE PLL BY PASS - // .. .. .. SRCSEL = 0x0 - // .. .. .. ==> 0XF8000120[5:4] = 0x00000000U - // .. .. .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. .. .. DIVISOR = 0x2 - // .. .. .. ==> 0XF8000120[13:8] = 0x00000002U - // .. .. .. ==> MASK : 0x00003F00U VAL : 0x00000200U - // .. .. .. CPU_6OR4XCLKACT = 0x1 - // .. .. .. ==> 0XF8000120[24:24] = 0x00000001U - // .. .. .. ==> MASK : 0x01000000U VAL : 0x01000000U - // .. .. .. CPU_3OR2XCLKACT = 0x1 - // .. .. .. ==> 0XF8000120[25:25] = 0x00000001U - // .. .. .. ==> MASK : 0x02000000U VAL : 0x02000000U - // .. .. .. CPU_2XCLKACT = 0x1 - // .. .. .. ==> 0XF8000120[26:26] = 0x00000001U - // .. .. .. ==> MASK : 0x04000000U VAL : 0x04000000U - // .. .. .. CPU_1XCLKACT = 0x1 - // .. .. .. ==> 0XF8000120[27:27] = 0x00000001U - // .. .. .. ==> MASK : 0x08000000U VAL : 0x08000000U - // .. .. .. CPU_PERI_CLKACT = 0x1 - // .. .. .. ==> 0XF8000120[28:28] = 0x00000001U - // .. .. .. ==> MASK : 0x10000000U VAL : 0x10000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000120, 0x1F003F30U ,0x1F000200U), - // .. .. FINISH: ARM PLL INIT - // .. .. START: DDR PLL INIT - // .. .. PLL_RES = 0xc - // .. .. ==> 0XF8000114[7:4] = 0x0000000CU - // .. .. ==> MASK : 0x000000F0U VAL : 0x000000C0U - // .. .. PLL_CP = 0x2 - // .. .. ==> 0XF8000114[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. LOCK_CNT = 0x1db - // .. .. ==> 0XF8000114[21:12] = 0x000001DBU - // .. .. ==> MASK : 0x003FF000U VAL : 0x001DB000U - // .. .. - EMIT_MASKWRITE(0XF8000114, 0x003FFFF0U ,0x001DB2C0U), - // .. .. .. START: UPDATE FB_DIV - // .. .. .. PLL_FDIV = 0x15 - // .. .. .. ==> 0XF8000104[18:12] = 0x00000015U - // .. .. .. ==> MASK : 0x0007F000U VAL : 0x00015000U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x0007F000U ,0x00015000U), - // .. .. .. FINISH: UPDATE FB_DIV - // .. .. .. START: BY PASS PLL - // .. .. .. PLL_BYPASS_FORCE = 1 - // .. .. .. ==> 0XF8000104[4:4] = 0x00000001U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x00000010U ,0x00000010U), - // .. .. .. FINISH: BY PASS PLL - // .. .. .. START: ASSERT RESET - // .. .. .. PLL_RESET = 1 - // .. .. .. ==> 0XF8000104[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x00000001U ,0x00000001U), - // .. .. .. FINISH: ASSERT RESET - // .. .. .. START: DEASSERT RESET - // .. .. .. PLL_RESET = 0 - // .. .. .. ==> 0XF8000104[0:0] = 0x00000000U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x00000001U ,0x00000000U), - // .. .. .. FINISH: DEASSERT RESET - // .. .. .. START: CHECK PLL STATUS - // .. .. .. DDR_PLL_LOCK = 1 - // .. .. .. ==> 0XF800010C[1:1] = 0x00000001U - // .. .. .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. .. .. - EMIT_MASKPOLL(0XF800010C, 0x00000002U), - // .. .. .. FINISH: CHECK PLL STATUS - // .. .. .. START: REMOVE PLL BY PASS - // .. .. .. PLL_BYPASS_FORCE = 0 - // .. .. .. ==> 0XF8000104[4:4] = 0x00000000U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x00000010U ,0x00000000U), - // .. .. .. FINISH: REMOVE PLL BY PASS - // .. .. .. DDR_3XCLKACT = 0x1 - // .. .. .. ==> 0XF8000124[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. DDR_2XCLKACT = 0x1 - // .. .. .. ==> 0XF8000124[1:1] = 0x00000001U - // .. .. .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. .. .. DDR_3XCLK_DIVISOR = 0x2 - // .. .. .. ==> 0XF8000124[25:20] = 0x00000002U - // .. .. .. ==> MASK : 0x03F00000U VAL : 0x00200000U - // .. .. .. DDR_2XCLK_DIVISOR = 0x3 - // .. .. .. ==> 0XF8000124[31:26] = 0x00000003U - // .. .. .. ==> MASK : 0xFC000000U VAL : 0x0C000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000124, 0xFFF00003U ,0x0C200003U), - // .. .. FINISH: DDR PLL INIT - // .. .. START: IO PLL INIT - // .. .. PLL_RES = 0xc - // .. .. ==> 0XF8000118[7:4] = 0x0000000CU - // .. .. ==> MASK : 0x000000F0U VAL : 0x000000C0U - // .. .. PLL_CP = 0x2 - // .. .. ==> 0XF8000118[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. LOCK_CNT = 0x1f4 - // .. .. ==> 0XF8000118[21:12] = 0x000001F4U - // .. .. ==> MASK : 0x003FF000U VAL : 0x001F4000U - // .. .. - EMIT_MASKWRITE(0XF8000118, 0x003FFFF0U ,0x001F42C0U), - // .. .. .. START: UPDATE FB_DIV - // .. .. .. PLL_FDIV = 0x14 - // .. .. .. ==> 0XF8000108[18:12] = 0x00000014U - // .. .. .. ==> MASK : 0x0007F000U VAL : 0x00014000U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x0007F000U ,0x00014000U), - // .. .. .. FINISH: UPDATE FB_DIV - // .. .. .. START: BY PASS PLL - // .. .. .. PLL_BYPASS_FORCE = 1 - // .. .. .. ==> 0XF8000108[4:4] = 0x00000001U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x00000010U ,0x00000010U), - // .. .. .. FINISH: BY PASS PLL - // .. .. .. START: ASSERT RESET - // .. .. .. PLL_RESET = 1 - // .. .. .. ==> 0XF8000108[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x00000001U ,0x00000001U), - // .. .. .. FINISH: ASSERT RESET - // .. .. .. START: DEASSERT RESET - // .. .. .. PLL_RESET = 0 - // .. .. .. ==> 0XF8000108[0:0] = 0x00000000U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x00000001U ,0x00000000U), - // .. .. .. FINISH: DEASSERT RESET - // .. .. .. START: CHECK PLL STATUS - // .. .. .. IO_PLL_LOCK = 1 - // .. .. .. ==> 0XF800010C[2:2] = 0x00000001U - // .. .. .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. .. .. - EMIT_MASKPOLL(0XF800010C, 0x00000004U), - // .. .. .. FINISH: CHECK PLL STATUS - // .. .. .. START: REMOVE PLL BY PASS - // .. .. .. PLL_BYPASS_FORCE = 0 - // .. .. .. ==> 0XF8000108[4:4] = 0x00000000U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x00000010U ,0x00000000U), - // .. .. .. FINISH: REMOVE PLL BY PASS - // .. .. FINISH: IO PLL INIT - // .. FINISH: PLL SLCR REGISTERS - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_clock_init_data_3_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: CLOCK CONTROL SLCR REGISTERS - // .. CLKACT = 0x1 - // .. ==> 0XF8000128[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. DIVISOR0 = 0x34 - // .. ==> 0XF8000128[13:8] = 0x00000034U - // .. ==> MASK : 0x00003F00U VAL : 0x00003400U - // .. DIVISOR1 = 0x2 - // .. ==> 0XF8000128[25:20] = 0x00000002U - // .. ==> MASK : 0x03F00000U VAL : 0x00200000U - // .. - EMIT_MASKWRITE(0XF8000128, 0x03F03F01U ,0x00203401U), - // .. CLKACT = 0x1 - // .. ==> 0XF8000138[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. SRCSEL = 0x0 - // .. ==> 0XF8000138[4:4] = 0x00000000U - // .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000138, 0x00000011U ,0x00000001U), - // .. CLKACT = 0x1 - // .. ==> 0XF8000140[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. SRCSEL = 0x0 - // .. ==> 0XF8000140[6:4] = 0x00000000U - // .. ==> MASK : 0x00000070U VAL : 0x00000000U - // .. DIVISOR = 0x8 - // .. ==> 0XF8000140[13:8] = 0x00000008U - // .. ==> MASK : 0x00003F00U VAL : 0x00000800U - // .. DIVISOR1 = 0x1 - // .. ==> 0XF8000140[25:20] = 0x00000001U - // .. ==> MASK : 0x03F00000U VAL : 0x00100000U - // .. - EMIT_MASKWRITE(0XF8000140, 0x03F03F71U ,0x00100801U), - // .. CLKACT = 0x1 - // .. ==> 0XF800014C[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. SRCSEL = 0x0 - // .. ==> 0XF800014C[5:4] = 0x00000000U - // .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. DIVISOR = 0x5 - // .. ==> 0XF800014C[13:8] = 0x00000005U - // .. ==> MASK : 0x00003F00U VAL : 0x00000500U - // .. - EMIT_MASKWRITE(0XF800014C, 0x00003F31U ,0x00000501U), - // .. CLKACT0 = 0x1 - // .. ==> 0XF8000150[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. CLKACT1 = 0x0 - // .. ==> 0XF8000150[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. SRCSEL = 0x0 - // .. ==> 0XF8000150[5:4] = 0x00000000U - // .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. DIVISOR = 0x14 - // .. ==> 0XF8000150[13:8] = 0x00000014U - // .. ==> MASK : 0x00003F00U VAL : 0x00001400U - // .. - EMIT_MASKWRITE(0XF8000150, 0x00003F33U ,0x00001401U), - // .. CLKACT0 = 0x1 - // .. ==> 0XF8000154[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. CLKACT1 = 0x1 - // .. ==> 0XF8000154[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. SRCSEL = 0x0 - // .. ==> 0XF8000154[5:4] = 0x00000000U - // .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. DIVISOR = 0xa - // .. ==> 0XF8000154[13:8] = 0x0000000AU - // .. ==> MASK : 0x00003F00U VAL : 0x00000A00U - // .. - EMIT_MASKWRITE(0XF8000154, 0x00003F33U ,0x00000A03U), - // .. .. START: TRACE CLOCK - // .. .. FINISH: TRACE CLOCK - // .. .. CLKACT = 0x1 - // .. .. ==> 0XF8000168[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. SRCSEL = 0x0 - // .. .. ==> 0XF8000168[5:4] = 0x00000000U - // .. .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. .. DIVISOR = 0x5 - // .. .. ==> 0XF8000168[13:8] = 0x00000005U - // .. .. ==> MASK : 0x00003F00U VAL : 0x00000500U - // .. .. - EMIT_MASKWRITE(0XF8000168, 0x00003F31U ,0x00000501U), - // .. .. SRCSEL = 0x0 - // .. .. ==> 0XF8000170[5:4] = 0x00000000U - // .. .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. .. DIVISOR0 = 0x5 - // .. .. ==> 0XF8000170[13:8] = 0x00000005U - // .. .. ==> MASK : 0x00003F00U VAL : 0x00000500U - // .. .. DIVISOR1 = 0x2 - // .. .. ==> 0XF8000170[25:20] = 0x00000002U - // .. .. ==> MASK : 0x03F00000U VAL : 0x00200000U - // .. .. - EMIT_MASKWRITE(0XF8000170, 0x03F03F30U ,0x00200500U), - // .. .. CLK_621_TRUE = 0x1 - // .. .. ==> 0XF80001C4[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. - EMIT_MASKWRITE(0XF80001C4, 0x00000001U ,0x00000001U), - // .. .. DMA_CPU_2XCLKACT = 0x1 - // .. .. ==> 0XF800012C[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. USB0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[2:2] = 0x00000001U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. .. USB1_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[3:3] = 0x00000001U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000008U - // .. .. GEM0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[6:6] = 0x00000001U - // .. .. ==> MASK : 0x00000040U VAL : 0x00000040U - // .. .. GEM1_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[7:7] = 0x00000000U - // .. .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. .. SDI0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[10:10] = 0x00000001U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000400U - // .. .. SDI1_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. SPI0_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[14:14] = 0x00000000U - // .. .. ==> MASK : 0x00004000U VAL : 0x00000000U - // .. .. SPI1_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[15:15] = 0x00000000U - // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U - // .. .. CAN0_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. CAN1_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. I2C0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[18:18] = 0x00000001U - // .. .. ==> MASK : 0x00040000U VAL : 0x00040000U - // .. .. I2C1_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[19:19] = 0x00000001U - // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. .. UART0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[20:20] = 0x00000001U - // .. .. ==> MASK : 0x00100000U VAL : 0x00100000U - // .. .. UART1_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[21:21] = 0x00000001U - // .. .. ==> MASK : 0x00200000U VAL : 0x00200000U - // .. .. GPIO_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[22:22] = 0x00000001U - // .. .. ==> MASK : 0x00400000U VAL : 0x00400000U - // .. .. LQSPI_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[23:23] = 0x00000001U - // .. .. ==> MASK : 0x00800000U VAL : 0x00800000U - // .. .. SMC_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[24:24] = 0x00000001U - // .. .. ==> MASK : 0x01000000U VAL : 0x01000000U - // .. .. - EMIT_MASKWRITE(0XF800012C, 0x01FFCCCDU ,0x01FC044DU), - // .. FINISH: CLOCK CONTROL SLCR REGISTERS - // .. START: THIS SHOULD BE BLANK - // .. FINISH: THIS SHOULD BE BLANK - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_ddr_init_data_3_0[] = { - // START: top - // .. START: DDR INITIALIZATION - // .. .. START: LOCK DDR - // .. .. reg_ddrc_soft_rstb = 0 - // .. .. ==> 0XF8006000[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_powerdown_en = 0x0 - // .. .. ==> 0XF8006000[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_ddrc_data_bus_width = 0x0 - // .. .. ==> 0XF8006000[3:2] = 0x00000000U - // .. .. ==> MASK : 0x0000000CU VAL : 0x00000000U - // .. .. reg_ddrc_burst8_refresh = 0x0 - // .. .. ==> 0XF8006000[6:4] = 0x00000000U - // .. .. ==> MASK : 0x00000070U VAL : 0x00000000U - // .. .. reg_ddrc_rdwr_idle_gap = 0x1 - // .. .. ==> 0XF8006000[13:7] = 0x00000001U - // .. .. ==> MASK : 0x00003F80U VAL : 0x00000080U - // .. .. reg_ddrc_dis_rd_bypass = 0x0 - // .. .. ==> 0XF8006000[14:14] = 0x00000000U - // .. .. ==> MASK : 0x00004000U VAL : 0x00000000U - // .. .. reg_ddrc_dis_act_bypass = 0x0 - // .. .. ==> 0XF8006000[15:15] = 0x00000000U - // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U - // .. .. reg_ddrc_dis_auto_refresh = 0x0 - // .. .. ==> 0XF8006000[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006000, 0x0001FFFFU ,0x00000080U), - // .. .. FINISH: LOCK DDR - // .. .. reg_ddrc_t_rfc_nom_x32 = 0x7f - // .. .. ==> 0XF8006004[11:0] = 0x0000007FU - // .. .. ==> MASK : 0x00000FFFU VAL : 0x0000007FU - // .. .. reserved_reg_ddrc_active_ranks = 0x1 - // .. .. ==> 0XF8006004[13:12] = 0x00000001U - // .. .. ==> MASK : 0x00003000U VAL : 0x00001000U - // .. .. reg_ddrc_addrmap_cs_bit0 = 0x0 - // .. .. ==> 0XF8006004[18:14] = 0x00000000U - // .. .. ==> MASK : 0x0007C000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006004, 0x0007FFFFU ,0x0000107FU), - // .. .. reg_ddrc_hpr_min_non_critical_x32 = 0xf - // .. .. ==> 0XF8006008[10:0] = 0x0000000FU - // .. .. ==> MASK : 0x000007FFU VAL : 0x0000000FU - // .. .. reg_ddrc_hpr_max_starve_x32 = 0xf - // .. .. ==> 0XF8006008[21:11] = 0x0000000FU - // .. .. ==> MASK : 0x003FF800U VAL : 0x00007800U - // .. .. reg_ddrc_hpr_xact_run_length = 0xf - // .. .. ==> 0XF8006008[25:22] = 0x0000000FU - // .. .. ==> MASK : 0x03C00000U VAL : 0x03C00000U - // .. .. - EMIT_MASKWRITE(0XF8006008, 0x03FFFFFFU ,0x03C0780FU), - // .. .. reg_ddrc_lpr_min_non_critical_x32 = 0x1 - // .. .. ==> 0XF800600C[10:0] = 0x00000001U - // .. .. ==> MASK : 0x000007FFU VAL : 0x00000001U - // .. .. reg_ddrc_lpr_max_starve_x32 = 0x2 - // .. .. ==> 0XF800600C[21:11] = 0x00000002U - // .. .. ==> MASK : 0x003FF800U VAL : 0x00001000U - // .. .. reg_ddrc_lpr_xact_run_length = 0x8 - // .. .. ==> 0XF800600C[25:22] = 0x00000008U - // .. .. ==> MASK : 0x03C00000U VAL : 0x02000000U - // .. .. - EMIT_MASKWRITE(0XF800600C, 0x03FFFFFFU ,0x02001001U), - // .. .. reg_ddrc_w_min_non_critical_x32 = 0x1 - // .. .. ==> 0XF8006010[10:0] = 0x00000001U - // .. .. ==> MASK : 0x000007FFU VAL : 0x00000001U - // .. .. reg_ddrc_w_xact_run_length = 0x8 - // .. .. ==> 0XF8006010[14:11] = 0x00000008U - // .. .. ==> MASK : 0x00007800U VAL : 0x00004000U - // .. .. reg_ddrc_w_max_starve_x32 = 0x2 - // .. .. ==> 0XF8006010[25:15] = 0x00000002U - // .. .. ==> MASK : 0x03FF8000U VAL : 0x00010000U - // .. .. - EMIT_MASKWRITE(0XF8006010, 0x03FFFFFFU ,0x00014001U), - // .. .. reg_ddrc_t_rc = 0x1a - // .. .. ==> 0XF8006014[5:0] = 0x0000001AU - // .. .. ==> MASK : 0x0000003FU VAL : 0x0000001AU - // .. .. reg_ddrc_t_rfc_min = 0x54 - // .. .. ==> 0XF8006014[13:6] = 0x00000054U - // .. .. ==> MASK : 0x00003FC0U VAL : 0x00001500U - // .. .. reg_ddrc_post_selfref_gap_x32 = 0x10 - // .. .. ==> 0XF8006014[20:14] = 0x00000010U - // .. .. ==> MASK : 0x001FC000U VAL : 0x00040000U - // .. .. - EMIT_MASKWRITE(0XF8006014, 0x001FFFFFU ,0x0004151AU), - // .. .. reg_ddrc_wr2pre = 0x12 - // .. .. ==> 0XF8006018[4:0] = 0x00000012U - // .. .. ==> MASK : 0x0000001FU VAL : 0x00000012U - // .. .. reg_ddrc_powerdown_to_x32 = 0x6 - // .. .. ==> 0XF8006018[9:5] = 0x00000006U - // .. .. ==> MASK : 0x000003E0U VAL : 0x000000C0U - // .. .. reg_ddrc_t_faw = 0x15 - // .. .. ==> 0XF8006018[15:10] = 0x00000015U - // .. .. ==> MASK : 0x0000FC00U VAL : 0x00005400U - // .. .. reg_ddrc_t_ras_max = 0x23 - // .. .. ==> 0XF8006018[21:16] = 0x00000023U - // .. .. ==> MASK : 0x003F0000U VAL : 0x00230000U - // .. .. reg_ddrc_t_ras_min = 0x13 - // .. .. ==> 0XF8006018[26:22] = 0x00000013U - // .. .. ==> MASK : 0x07C00000U VAL : 0x04C00000U - // .. .. reg_ddrc_t_cke = 0x4 - // .. .. ==> 0XF8006018[31:28] = 0x00000004U - // .. .. ==> MASK : 0xF0000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF8006018, 0xF7FFFFFFU ,0x44E354D2U), - // .. .. reg_ddrc_write_latency = 0x5 - // .. .. ==> 0XF800601C[4:0] = 0x00000005U - // .. .. ==> MASK : 0x0000001FU VAL : 0x00000005U - // .. .. reg_ddrc_rd2wr = 0x7 - // .. .. ==> 0XF800601C[9:5] = 0x00000007U - // .. .. ==> MASK : 0x000003E0U VAL : 0x000000E0U - // .. .. reg_ddrc_wr2rd = 0xe - // .. .. ==> 0XF800601C[14:10] = 0x0000000EU - // .. .. ==> MASK : 0x00007C00U VAL : 0x00003800U - // .. .. reg_ddrc_t_xp = 0x4 - // .. .. ==> 0XF800601C[19:15] = 0x00000004U - // .. .. ==> MASK : 0x000F8000U VAL : 0x00020000U - // .. .. reg_ddrc_pad_pd = 0x0 - // .. .. ==> 0XF800601C[22:20] = 0x00000000U - // .. .. ==> MASK : 0x00700000U VAL : 0x00000000U - // .. .. reg_ddrc_rd2pre = 0x4 - // .. .. ==> 0XF800601C[27:23] = 0x00000004U - // .. .. ==> MASK : 0x0F800000U VAL : 0x02000000U - // .. .. reg_ddrc_t_rcd = 0x7 - // .. .. ==> 0XF800601C[31:28] = 0x00000007U - // .. .. ==> MASK : 0xF0000000U VAL : 0x70000000U - // .. .. - EMIT_MASKWRITE(0XF800601C, 0xFFFFFFFFU ,0x720238E5U), - // .. .. reg_ddrc_t_ccd = 0x4 - // .. .. ==> 0XF8006020[4:2] = 0x00000004U - // .. .. ==> MASK : 0x0000001CU VAL : 0x00000010U - // .. .. reg_ddrc_t_rrd = 0x6 - // .. .. ==> 0XF8006020[7:5] = 0x00000006U - // .. .. ==> MASK : 0x000000E0U VAL : 0x000000C0U - // .. .. reg_ddrc_refresh_margin = 0x2 - // .. .. ==> 0XF8006020[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. reg_ddrc_t_rp = 0x7 - // .. .. ==> 0XF8006020[15:12] = 0x00000007U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00007000U - // .. .. reg_ddrc_refresh_to_x32 = 0x8 - // .. .. ==> 0XF8006020[20:16] = 0x00000008U - // .. .. ==> MASK : 0x001F0000U VAL : 0x00080000U - // .. .. reg_ddrc_mobile = 0x0 - // .. .. ==> 0XF8006020[22:22] = 0x00000000U - // .. .. ==> MASK : 0x00400000U VAL : 0x00000000U - // .. .. reg_ddrc_en_dfi_dram_clk_disable = 0x0 - // .. .. ==> 0XF8006020[23:23] = 0x00000000U - // .. .. ==> MASK : 0x00800000U VAL : 0x00000000U - // .. .. reg_ddrc_read_latency = 0x7 - // .. .. ==> 0XF8006020[28:24] = 0x00000007U - // .. .. ==> MASK : 0x1F000000U VAL : 0x07000000U - // .. .. reg_phy_mode_ddr1_ddr2 = 0x1 - // .. .. ==> 0XF8006020[29:29] = 0x00000001U - // .. .. ==> MASK : 0x20000000U VAL : 0x20000000U - // .. .. reg_ddrc_dis_pad_pd = 0x0 - // .. .. ==> 0XF8006020[30:30] = 0x00000000U - // .. .. ==> MASK : 0x40000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006020, 0x7FDFFFFCU ,0x270872D0U), - // .. .. reg_ddrc_en_2t_timing_mode = 0x0 - // .. .. ==> 0XF8006024[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_prefer_write = 0x0 - // .. .. ==> 0XF8006024[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_ddrc_mr_wr = 0x0 - // .. .. ==> 0XF8006024[6:6] = 0x00000000U - // .. .. ==> MASK : 0x00000040U VAL : 0x00000000U - // .. .. reg_ddrc_mr_addr = 0x0 - // .. .. ==> 0XF8006024[8:7] = 0x00000000U - // .. .. ==> MASK : 0x00000180U VAL : 0x00000000U - // .. .. reg_ddrc_mr_data = 0x0 - // .. .. ==> 0XF8006024[24:9] = 0x00000000U - // .. .. ==> MASK : 0x01FFFE00U VAL : 0x00000000U - // .. .. ddrc_reg_mr_wr_busy = 0x0 - // .. .. ==> 0XF8006024[25:25] = 0x00000000U - // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U - // .. .. reg_ddrc_mr_type = 0x0 - // .. .. ==> 0XF8006024[26:26] = 0x00000000U - // .. .. ==> MASK : 0x04000000U VAL : 0x00000000U - // .. .. reg_ddrc_mr_rdata_valid = 0x0 - // .. .. ==> 0XF8006024[27:27] = 0x00000000U - // .. .. ==> MASK : 0x08000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006024, 0x0FFFFFC3U ,0x00000000U), - // .. .. reg_ddrc_final_wait_x32 = 0x7 - // .. .. ==> 0XF8006028[6:0] = 0x00000007U - // .. .. ==> MASK : 0x0000007FU VAL : 0x00000007U - // .. .. reg_ddrc_pre_ocd_x32 = 0x0 - // .. .. ==> 0XF8006028[10:7] = 0x00000000U - // .. .. ==> MASK : 0x00000780U VAL : 0x00000000U - // .. .. reg_ddrc_t_mrd = 0x4 - // .. .. ==> 0XF8006028[13:11] = 0x00000004U - // .. .. ==> MASK : 0x00003800U VAL : 0x00002000U - // .. .. - EMIT_MASKWRITE(0XF8006028, 0x00003FFFU ,0x00002007U), - // .. .. reg_ddrc_emr2 = 0x8 - // .. .. ==> 0XF800602C[15:0] = 0x00000008U - // .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000008U - // .. .. reg_ddrc_emr3 = 0x0 - // .. .. ==> 0XF800602C[31:16] = 0x00000000U - // .. .. ==> MASK : 0xFFFF0000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800602C, 0xFFFFFFFFU ,0x00000008U), - // .. .. reg_ddrc_mr = 0x930 - // .. .. ==> 0XF8006030[15:0] = 0x00000930U - // .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000930U - // .. .. reg_ddrc_emr = 0x4 - // .. .. ==> 0XF8006030[31:16] = 0x00000004U - // .. .. ==> MASK : 0xFFFF0000U VAL : 0x00040000U - // .. .. - EMIT_MASKWRITE(0XF8006030, 0xFFFFFFFFU ,0x00040930U), - // .. .. reg_ddrc_burst_rdwr = 0x4 - // .. .. ==> 0XF8006034[3:0] = 0x00000004U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000004U - // .. .. reg_ddrc_pre_cke_x1024 = 0x167 - // .. .. ==> 0XF8006034[13:4] = 0x00000167U - // .. .. ==> MASK : 0x00003FF0U VAL : 0x00001670U - // .. .. reg_ddrc_post_cke_x1024 = 0x1 - // .. .. ==> 0XF8006034[25:16] = 0x00000001U - // .. .. ==> MASK : 0x03FF0000U VAL : 0x00010000U - // .. .. reg_ddrc_burstchop = 0x0 - // .. .. ==> 0XF8006034[28:28] = 0x00000000U - // .. .. ==> MASK : 0x10000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006034, 0x13FF3FFFU ,0x00011674U), - // .. .. reg_ddrc_force_low_pri_n = 0x0 - // .. .. ==> 0XF8006038[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_dis_dq = 0x0 - // .. .. ==> 0XF8006038[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006038, 0x00000003U ,0x00000000U), - // .. .. reg_ddrc_addrmap_bank_b0 = 0x7 - // .. .. ==> 0XF800603C[3:0] = 0x00000007U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000007U - // .. .. reg_ddrc_addrmap_bank_b1 = 0x7 - // .. .. ==> 0XF800603C[7:4] = 0x00000007U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000070U - // .. .. reg_ddrc_addrmap_bank_b2 = 0x7 - // .. .. ==> 0XF800603C[11:8] = 0x00000007U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000700U - // .. .. reg_ddrc_addrmap_col_b5 = 0x0 - // .. .. ==> 0XF800603C[15:12] = 0x00000000U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b6 = 0x0 - // .. .. ==> 0XF800603C[19:16] = 0x00000000U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800603C, 0x000FFFFFU ,0x00000777U), - // .. .. reg_ddrc_addrmap_col_b2 = 0x0 - // .. .. ==> 0XF8006040[3:0] = 0x00000000U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b3 = 0x0 - // .. .. ==> 0XF8006040[7:4] = 0x00000000U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b4 = 0x0 - // .. .. ==> 0XF8006040[11:8] = 0x00000000U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b7 = 0x0 - // .. .. ==> 0XF8006040[15:12] = 0x00000000U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b8 = 0x0 - // .. .. ==> 0XF8006040[19:16] = 0x00000000U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b9 = 0xf - // .. .. ==> 0XF8006040[23:20] = 0x0000000FU - // .. .. ==> MASK : 0x00F00000U VAL : 0x00F00000U - // .. .. reg_ddrc_addrmap_col_b10 = 0xf - // .. .. ==> 0XF8006040[27:24] = 0x0000000FU - // .. .. ==> MASK : 0x0F000000U VAL : 0x0F000000U - // .. .. reg_ddrc_addrmap_col_b11 = 0xf - // .. .. ==> 0XF8006040[31:28] = 0x0000000FU - // .. .. ==> MASK : 0xF0000000U VAL : 0xF0000000U - // .. .. - EMIT_MASKWRITE(0XF8006040, 0xFFFFFFFFU ,0xFFF00000U), - // .. .. reg_ddrc_addrmap_row_b0 = 0x6 - // .. .. ==> 0XF8006044[3:0] = 0x00000006U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000006U - // .. .. reg_ddrc_addrmap_row_b1 = 0x6 - // .. .. ==> 0XF8006044[7:4] = 0x00000006U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000060U - // .. .. reg_ddrc_addrmap_row_b2_11 = 0x6 - // .. .. ==> 0XF8006044[11:8] = 0x00000006U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000600U - // .. .. reg_ddrc_addrmap_row_b12 = 0x6 - // .. .. ==> 0XF8006044[15:12] = 0x00000006U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00006000U - // .. .. reg_ddrc_addrmap_row_b13 = 0x6 - // .. .. ==> 0XF8006044[19:16] = 0x00000006U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00060000U - // .. .. reg_ddrc_addrmap_row_b14 = 0xf - // .. .. ==> 0XF8006044[23:20] = 0x0000000FU - // .. .. ==> MASK : 0x00F00000U VAL : 0x00F00000U - // .. .. reg_ddrc_addrmap_row_b15 = 0xf - // .. .. ==> 0XF8006044[27:24] = 0x0000000FU - // .. .. ==> MASK : 0x0F000000U VAL : 0x0F000000U - // .. .. - EMIT_MASKWRITE(0XF8006044, 0x0FFFFFFFU ,0x0FF66666U), - // .. .. reg_phy_rd_local_odt = 0x0 - // .. .. ==> 0XF8006048[13:12] = 0x00000000U - // .. .. ==> MASK : 0x00003000U VAL : 0x00000000U - // .. .. reg_phy_wr_local_odt = 0x3 - // .. .. ==> 0XF8006048[15:14] = 0x00000003U - // .. .. ==> MASK : 0x0000C000U VAL : 0x0000C000U - // .. .. reg_phy_idle_local_odt = 0x3 - // .. .. ==> 0XF8006048[17:16] = 0x00000003U - // .. .. ==> MASK : 0x00030000U VAL : 0x00030000U - // .. .. reserved_reg_ddrc_rank0_wr_odt = 0x1 - // .. .. ==> 0XF8006048[5:3] = 0x00000001U - // .. .. ==> MASK : 0x00000038U VAL : 0x00000008U - // .. .. reserved_reg_ddrc_rank0_rd_odt = 0x0 - // .. .. ==> 0XF8006048[2:0] = 0x00000000U - // .. .. ==> MASK : 0x00000007U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006048, 0x0003F03FU ,0x0003C008U), - // .. .. reg_phy_rd_cmd_to_data = 0x0 - // .. .. ==> 0XF8006050[3:0] = 0x00000000U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U - // .. .. reg_phy_wr_cmd_to_data = 0x0 - // .. .. ==> 0XF8006050[7:4] = 0x00000000U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. .. reg_phy_rdc_we_to_re_delay = 0x8 - // .. .. ==> 0XF8006050[11:8] = 0x00000008U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000800U - // .. .. reg_phy_rdc_fifo_rst_disable = 0x0 - // .. .. ==> 0XF8006050[15:15] = 0x00000000U - // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U - // .. .. reg_phy_use_fixed_re = 0x1 - // .. .. ==> 0XF8006050[16:16] = 0x00000001U - // .. .. ==> MASK : 0x00010000U VAL : 0x00010000U - // .. .. reg_phy_rdc_fifo_rst_err_cnt_clr = 0x0 - // .. .. ==> 0XF8006050[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_phy_dis_phy_ctrl_rstn = 0x0 - // .. .. ==> 0XF8006050[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_phy_clk_stall_level = 0x0 - // .. .. ==> 0XF8006050[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_num_of_dq0 = 0x7 - // .. .. ==> 0XF8006050[27:24] = 0x00000007U - // .. .. ==> MASK : 0x0F000000U VAL : 0x07000000U - // .. .. reg_phy_wrlvl_num_of_dq0 = 0x7 - // .. .. ==> 0XF8006050[31:28] = 0x00000007U - // .. .. ==> MASK : 0xF0000000U VAL : 0x70000000U - // .. .. - EMIT_MASKWRITE(0XF8006050, 0xFF0F8FFFU ,0x77010800U), - // .. .. reg_ddrc_dis_dll_calib = 0x0 - // .. .. ==> 0XF8006058[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006058, 0x00010000U ,0x00000000U), - // .. .. reg_ddrc_rd_odt_delay = 0x3 - // .. .. ==> 0XF800605C[3:0] = 0x00000003U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000003U - // .. .. reg_ddrc_wr_odt_delay = 0x0 - // .. .. ==> 0XF800605C[7:4] = 0x00000000U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. .. reg_ddrc_rd_odt_hold = 0x0 - // .. .. ==> 0XF800605C[11:8] = 0x00000000U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000000U - // .. .. reg_ddrc_wr_odt_hold = 0x5 - // .. .. ==> 0XF800605C[15:12] = 0x00000005U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00005000U - // .. .. - EMIT_MASKWRITE(0XF800605C, 0x0000FFFFU ,0x00005003U), - // .. .. reg_ddrc_pageclose = 0x0 - // .. .. ==> 0XF8006060[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_lpr_num_entries = 0x1f - // .. .. ==> 0XF8006060[6:1] = 0x0000001FU - // .. .. ==> MASK : 0x0000007EU VAL : 0x0000003EU - // .. .. reg_ddrc_auto_pre_en = 0x0 - // .. .. ==> 0XF8006060[7:7] = 0x00000000U - // .. .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. .. reg_ddrc_refresh_update_level = 0x0 - // .. .. ==> 0XF8006060[8:8] = 0x00000000U - // .. .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. .. reg_ddrc_dis_wc = 0x0 - // .. .. ==> 0XF8006060[9:9] = 0x00000000U - // .. .. ==> MASK : 0x00000200U VAL : 0x00000000U - // .. .. reg_ddrc_dis_collision_page_opt = 0x0 - // .. .. ==> 0XF8006060[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_ddrc_selfref_en = 0x0 - // .. .. ==> 0XF8006060[12:12] = 0x00000000U - // .. .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006060, 0x000017FFU ,0x0000003EU), - // .. .. reg_ddrc_go2critical_hysteresis = 0x0 - // .. .. ==> 0XF8006064[12:5] = 0x00000000U - // .. .. ==> MASK : 0x00001FE0U VAL : 0x00000000U - // .. .. reg_arb_go2critical_en = 0x1 - // .. .. ==> 0XF8006064[17:17] = 0x00000001U - // .. .. ==> MASK : 0x00020000U VAL : 0x00020000U - // .. .. - EMIT_MASKWRITE(0XF8006064, 0x00021FE0U ,0x00020000U), - // .. .. reg_ddrc_wrlvl_ww = 0x41 - // .. .. ==> 0XF8006068[7:0] = 0x00000041U - // .. .. ==> MASK : 0x000000FFU VAL : 0x00000041U - // .. .. reg_ddrc_rdlvl_rr = 0x41 - // .. .. ==> 0XF8006068[15:8] = 0x00000041U - // .. .. ==> MASK : 0x0000FF00U VAL : 0x00004100U - // .. .. reg_ddrc_dfi_t_wlmrd = 0x28 - // .. .. ==> 0XF8006068[25:16] = 0x00000028U - // .. .. ==> MASK : 0x03FF0000U VAL : 0x00280000U - // .. .. - EMIT_MASKWRITE(0XF8006068, 0x03FFFFFFU ,0x00284141U), - // .. .. dfi_t_ctrlupd_interval_min_x1024 = 0x10 - // .. .. ==> 0XF800606C[7:0] = 0x00000010U - // .. .. ==> MASK : 0x000000FFU VAL : 0x00000010U - // .. .. dfi_t_ctrlupd_interval_max_x1024 = 0x16 - // .. .. ==> 0XF800606C[15:8] = 0x00000016U - // .. .. ==> MASK : 0x0000FF00U VAL : 0x00001600U - // .. .. - EMIT_MASKWRITE(0XF800606C, 0x0000FFFFU ,0x00001610U), - // .. .. reg_ddrc_dfi_t_ctrl_delay = 0x1 - // .. .. ==> 0XF8006078[3:0] = 0x00000001U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000001U - // .. .. reg_ddrc_dfi_t_dram_clk_disable = 0x1 - // .. .. ==> 0XF8006078[7:4] = 0x00000001U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000010U - // .. .. reg_ddrc_dfi_t_dram_clk_enable = 0x1 - // .. .. ==> 0XF8006078[11:8] = 0x00000001U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000100U - // .. .. reg_ddrc_t_cksre = 0x6 - // .. .. ==> 0XF8006078[15:12] = 0x00000006U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00006000U - // .. .. reg_ddrc_t_cksrx = 0x6 - // .. .. ==> 0XF8006078[19:16] = 0x00000006U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00060000U - // .. .. reg_ddrc_t_ckesr = 0x4 - // .. .. ==> 0XF8006078[25:20] = 0x00000004U - // .. .. ==> MASK : 0x03F00000U VAL : 0x00400000U - // .. .. - EMIT_MASKWRITE(0XF8006078, 0x03FFFFFFU ,0x00466111U), - // .. .. reg_ddrc_t_ckpde = 0x2 - // .. .. ==> 0XF800607C[3:0] = 0x00000002U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000002U - // .. .. reg_ddrc_t_ckpdx = 0x2 - // .. .. ==> 0XF800607C[7:4] = 0x00000002U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000020U - // .. .. reg_ddrc_t_ckdpde = 0x2 - // .. .. ==> 0XF800607C[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. reg_ddrc_t_ckdpdx = 0x2 - // .. .. ==> 0XF800607C[15:12] = 0x00000002U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00002000U - // .. .. reg_ddrc_t_ckcsx = 0x3 - // .. .. ==> 0XF800607C[19:16] = 0x00000003U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00030000U - // .. .. - EMIT_MASKWRITE(0XF800607C, 0x000FFFFFU ,0x00032222U), - // .. .. reg_ddrc_dis_auto_zq = 0x0 - // .. .. ==> 0XF80060A4[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_ddr3 = 0x1 - // .. .. ==> 0XF80060A4[1:1] = 0x00000001U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. .. reg_ddrc_t_mod = 0x200 - // .. .. ==> 0XF80060A4[11:2] = 0x00000200U - // .. .. ==> MASK : 0x00000FFCU VAL : 0x00000800U - // .. .. reg_ddrc_t_zq_long_nop = 0x200 - // .. .. ==> 0XF80060A4[21:12] = 0x00000200U - // .. .. ==> MASK : 0x003FF000U VAL : 0x00200000U - // .. .. reg_ddrc_t_zq_short_nop = 0x40 - // .. .. ==> 0XF80060A4[31:22] = 0x00000040U - // .. .. ==> MASK : 0xFFC00000U VAL : 0x10000000U - // .. .. - EMIT_MASKWRITE(0XF80060A4, 0xFFFFFFFFU ,0x10200802U), - // .. .. t_zq_short_interval_x1024 = 0xc845 - // .. .. ==> 0XF80060A8[19:0] = 0x0000C845U - // .. .. ==> MASK : 0x000FFFFFU VAL : 0x0000C845U - // .. .. dram_rstn_x1024 = 0x67 - // .. .. ==> 0XF80060A8[27:20] = 0x00000067U - // .. .. ==> MASK : 0x0FF00000U VAL : 0x06700000U - // .. .. - EMIT_MASKWRITE(0XF80060A8, 0x0FFFFFFFU ,0x0670C845U), - // .. .. deeppowerdown_en = 0x0 - // .. .. ==> 0XF80060AC[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. deeppowerdown_to_x1024 = 0xff - // .. .. ==> 0XF80060AC[8:1] = 0x000000FFU - // .. .. ==> MASK : 0x000001FEU VAL : 0x000001FEU - // .. .. - EMIT_MASKWRITE(0XF80060AC, 0x000001FFU ,0x000001FEU), - // .. .. dfi_wrlvl_max_x1024 = 0xfff - // .. .. ==> 0XF80060B0[11:0] = 0x00000FFFU - // .. .. ==> MASK : 0x00000FFFU VAL : 0x00000FFFU - // .. .. dfi_rdlvl_max_x1024 = 0xfff - // .. .. ==> 0XF80060B0[23:12] = 0x00000FFFU - // .. .. ==> MASK : 0x00FFF000U VAL : 0x00FFF000U - // .. .. ddrc_reg_twrlvl_max_error = 0x0 - // .. .. ==> 0XF80060B0[24:24] = 0x00000000U - // .. .. ==> MASK : 0x01000000U VAL : 0x00000000U - // .. .. ddrc_reg_trdlvl_max_error = 0x0 - // .. .. ==> 0XF80060B0[25:25] = 0x00000000U - // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U - // .. .. reg_ddrc_dfi_wr_level_en = 0x1 - // .. .. ==> 0XF80060B0[26:26] = 0x00000001U - // .. .. ==> MASK : 0x04000000U VAL : 0x04000000U - // .. .. reg_ddrc_dfi_rd_dqs_gate_level = 0x1 - // .. .. ==> 0XF80060B0[27:27] = 0x00000001U - // .. .. ==> MASK : 0x08000000U VAL : 0x08000000U - // .. .. reg_ddrc_dfi_rd_data_eye_train = 0x1 - // .. .. ==> 0XF80060B0[28:28] = 0x00000001U - // .. .. ==> MASK : 0x10000000U VAL : 0x10000000U - // .. .. - EMIT_MASKWRITE(0XF80060B0, 0x1FFFFFFFU ,0x1CFFFFFFU), - // .. .. reg_ddrc_skip_ocd = 0x1 - // .. .. ==> 0XF80060B4[9:9] = 0x00000001U - // .. .. ==> MASK : 0x00000200U VAL : 0x00000200U - // .. .. - EMIT_MASKWRITE(0XF80060B4, 0x00000200U ,0x00000200U), - // .. .. reg_ddrc_dfi_t_rddata_en = 0x6 - // .. .. ==> 0XF80060B8[4:0] = 0x00000006U - // .. .. ==> MASK : 0x0000001FU VAL : 0x00000006U - // .. .. reg_ddrc_dfi_t_ctrlup_min = 0x3 - // .. .. ==> 0XF80060B8[14:5] = 0x00000003U - // .. .. ==> MASK : 0x00007FE0U VAL : 0x00000060U - // .. .. reg_ddrc_dfi_t_ctrlup_max = 0x40 - // .. .. ==> 0XF80060B8[24:15] = 0x00000040U - // .. .. ==> MASK : 0x01FF8000U VAL : 0x00200000U - // .. .. - EMIT_MASKWRITE(0XF80060B8, 0x01FFFFFFU ,0x00200066U), - // .. .. Clear_Uncorrectable_DRAM_ECC_error = 0x0 - // .. .. ==> 0XF80060C4[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. Clear_Correctable_DRAM_ECC_error = 0x0 - // .. .. ==> 0XF80060C4[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060C4, 0x00000003U ,0x00000000U), - // .. .. CORR_ECC_LOG_VALID = 0x0 - // .. .. ==> 0XF80060C8[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. ECC_CORRECTED_BIT_NUM = 0x0 - // .. .. ==> 0XF80060C8[7:1] = 0x00000000U - // .. .. ==> MASK : 0x000000FEU VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060C8, 0x000000FFU ,0x00000000U), - // .. .. UNCORR_ECC_LOG_VALID = 0x0 - // .. .. ==> 0XF80060DC[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060DC, 0x00000001U ,0x00000000U), - // .. .. STAT_NUM_CORR_ERR = 0x0 - // .. .. ==> 0XF80060F0[15:8] = 0x00000000U - // .. .. ==> MASK : 0x0000FF00U VAL : 0x00000000U - // .. .. STAT_NUM_UNCORR_ERR = 0x0 - // .. .. ==> 0XF80060F0[7:0] = 0x00000000U - // .. .. ==> MASK : 0x000000FFU VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060F0, 0x0000FFFFU ,0x00000000U), - // .. .. reg_ddrc_ecc_mode = 0x0 - // .. .. ==> 0XF80060F4[2:0] = 0x00000000U - // .. .. ==> MASK : 0x00000007U VAL : 0x00000000U - // .. .. reg_ddrc_dis_scrub = 0x1 - // .. .. ==> 0XF80060F4[3:3] = 0x00000001U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000008U - // .. .. - EMIT_MASKWRITE(0XF80060F4, 0x0000000FU ,0x00000008U), - // .. .. reg_phy_dif_on = 0x0 - // .. .. ==> 0XF8006114[3:0] = 0x00000000U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U - // .. .. reg_phy_dif_off = 0x0 - // .. .. ==> 0XF8006114[7:4] = 0x00000000U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006114, 0x000000FFU ,0x00000000U), - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF8006118[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006118[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF8006118[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006118[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF8006118[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF8006118[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF8006118[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF8006118, 0x7FFFFFCFU ,0x40000001U), - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF800611C[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF800611C[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF800611C[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF800611C[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF800611C[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF800611C[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF800611C[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF800611C, 0x7FFFFFCFU ,0x40000001U), - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF8006120[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006120[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF8006120[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006120[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF8006120[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF8006120[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF8006120[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF8006120, 0x7FFFFFCFU ,0x40000001U), - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF8006124[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006124[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF8006124[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006124[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF8006124[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF8006124[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF8006124[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF8006124, 0x7FFFFFCFU ,0x40000001U), - // .. .. reg_phy_wrlvl_init_ratio = 0x0 - // .. .. ==> 0XF800612C[9:0] = 0x00000000U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U - // .. .. reg_phy_gatelvl_init_ratio = 0x8f - // .. .. ==> 0XF800612C[19:10] = 0x0000008FU - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00023C00U - // .. .. - EMIT_MASKWRITE(0XF800612C, 0x000FFFFFU ,0x00023C00U), - // .. .. reg_phy_wrlvl_init_ratio = 0x0 - // .. .. ==> 0XF8006130[9:0] = 0x00000000U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U - // .. .. reg_phy_gatelvl_init_ratio = 0x8a - // .. .. ==> 0XF8006130[19:10] = 0x0000008AU - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00022800U - // .. .. - EMIT_MASKWRITE(0XF8006130, 0x000FFFFFU ,0x00022800U), - // .. .. reg_phy_wrlvl_init_ratio = 0x0 - // .. .. ==> 0XF8006134[9:0] = 0x00000000U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U - // .. .. reg_phy_gatelvl_init_ratio = 0x8b - // .. .. ==> 0XF8006134[19:10] = 0x0000008BU - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00022C00U - // .. .. - EMIT_MASKWRITE(0XF8006134, 0x000FFFFFU ,0x00022C00U), - // .. .. reg_phy_wrlvl_init_ratio = 0x0 - // .. .. ==> 0XF8006138[9:0] = 0x00000000U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U - // .. .. reg_phy_gatelvl_init_ratio = 0x92 - // .. .. ==> 0XF8006138[19:10] = 0x00000092U - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00024800U - // .. .. - EMIT_MASKWRITE(0XF8006138, 0x000FFFFFU ,0x00024800U), - // .. .. reg_phy_rd_dqs_slave_ratio = 0x35 - // .. .. ==> 0XF8006140[9:0] = 0x00000035U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U - // .. .. reg_phy_rd_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006140[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_rd_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006140[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006140, 0x000FFFFFU ,0x00000035U), - // .. .. reg_phy_rd_dqs_slave_ratio = 0x35 - // .. .. ==> 0XF8006144[9:0] = 0x00000035U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U - // .. .. reg_phy_rd_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006144[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_rd_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006144[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006144, 0x000FFFFFU ,0x00000035U), - // .. .. reg_phy_rd_dqs_slave_ratio = 0x35 - // .. .. ==> 0XF8006148[9:0] = 0x00000035U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U - // .. .. reg_phy_rd_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006148[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_rd_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006148[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006148, 0x000FFFFFU ,0x00000035U), - // .. .. reg_phy_rd_dqs_slave_ratio = 0x35 - // .. .. ==> 0XF800614C[9:0] = 0x00000035U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U - // .. .. reg_phy_rd_dqs_slave_force = 0x0 - // .. .. ==> 0XF800614C[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_rd_dqs_slave_delay = 0x0 - // .. .. ==> 0XF800614C[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800614C, 0x000FFFFFU ,0x00000035U), - // .. .. reg_phy_wr_dqs_slave_ratio = 0x77 - // .. .. ==> 0XF8006154[9:0] = 0x00000077U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000077U - // .. .. reg_phy_wr_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006154[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006154[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006154, 0x000FFFFFU ,0x00000077U), - // .. .. reg_phy_wr_dqs_slave_ratio = 0x7c - // .. .. ==> 0XF8006158[9:0] = 0x0000007CU - // .. .. ==> MASK : 0x000003FFU VAL : 0x0000007CU - // .. .. reg_phy_wr_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006158[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006158[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006158, 0x000FFFFFU ,0x0000007CU), - // .. .. reg_phy_wr_dqs_slave_ratio = 0x7c - // .. .. ==> 0XF800615C[9:0] = 0x0000007CU - // .. .. ==> MASK : 0x000003FFU VAL : 0x0000007CU - // .. .. reg_phy_wr_dqs_slave_force = 0x0 - // .. .. ==> 0XF800615C[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_dqs_slave_delay = 0x0 - // .. .. ==> 0XF800615C[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800615C, 0x000FFFFFU ,0x0000007CU), - // .. .. reg_phy_wr_dqs_slave_ratio = 0x75 - // .. .. ==> 0XF8006160[9:0] = 0x00000075U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000075U - // .. .. reg_phy_wr_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006160[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006160[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006160, 0x000FFFFFU ,0x00000075U), - // .. .. reg_phy_fifo_we_slave_ratio = 0xe4 - // .. .. ==> 0XF8006168[10:0] = 0x000000E4U - // .. .. ==> MASK : 0x000007FFU VAL : 0x000000E4U - // .. .. reg_phy_fifo_we_in_force = 0x0 - // .. .. ==> 0XF8006168[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. reg_phy_fifo_we_in_delay = 0x0 - // .. .. ==> 0XF8006168[20:12] = 0x00000000U - // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006168, 0x001FFFFFU ,0x000000E4U), - // .. .. reg_phy_fifo_we_slave_ratio = 0xdf - // .. .. ==> 0XF800616C[10:0] = 0x000000DFU - // .. .. ==> MASK : 0x000007FFU VAL : 0x000000DFU - // .. .. reg_phy_fifo_we_in_force = 0x0 - // .. .. ==> 0XF800616C[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. reg_phy_fifo_we_in_delay = 0x0 - // .. .. ==> 0XF800616C[20:12] = 0x00000000U - // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800616C, 0x001FFFFFU ,0x000000DFU), - // .. .. reg_phy_fifo_we_slave_ratio = 0xe0 - // .. .. ==> 0XF8006170[10:0] = 0x000000E0U - // .. .. ==> MASK : 0x000007FFU VAL : 0x000000E0U - // .. .. reg_phy_fifo_we_in_force = 0x0 - // .. .. ==> 0XF8006170[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. reg_phy_fifo_we_in_delay = 0x0 - // .. .. ==> 0XF8006170[20:12] = 0x00000000U - // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006170, 0x001FFFFFU ,0x000000E0U), - // .. .. reg_phy_fifo_we_slave_ratio = 0xe7 - // .. .. ==> 0XF8006174[10:0] = 0x000000E7U - // .. .. ==> MASK : 0x000007FFU VAL : 0x000000E7U - // .. .. reg_phy_fifo_we_in_force = 0x0 - // .. .. ==> 0XF8006174[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. reg_phy_fifo_we_in_delay = 0x0 - // .. .. ==> 0XF8006174[20:12] = 0x00000000U - // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006174, 0x001FFFFFU ,0x000000E7U), - // .. .. reg_phy_wr_data_slave_ratio = 0xb7 - // .. .. ==> 0XF800617C[9:0] = 0x000000B7U - // .. .. ==> MASK : 0x000003FFU VAL : 0x000000B7U - // .. .. reg_phy_wr_data_slave_force = 0x0 - // .. .. ==> 0XF800617C[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_data_slave_delay = 0x0 - // .. .. ==> 0XF800617C[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800617C, 0x000FFFFFU ,0x000000B7U), - // .. .. reg_phy_wr_data_slave_ratio = 0xbc - // .. .. ==> 0XF8006180[9:0] = 0x000000BCU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000000BCU - // .. .. reg_phy_wr_data_slave_force = 0x0 - // .. .. ==> 0XF8006180[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_data_slave_delay = 0x0 - // .. .. ==> 0XF8006180[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006180, 0x000FFFFFU ,0x000000BCU), - // .. .. reg_phy_wr_data_slave_ratio = 0xbc - // .. .. ==> 0XF8006184[9:0] = 0x000000BCU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000000BCU - // .. .. reg_phy_wr_data_slave_force = 0x0 - // .. .. ==> 0XF8006184[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_data_slave_delay = 0x0 - // .. .. ==> 0XF8006184[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006184, 0x000FFFFFU ,0x000000BCU), - // .. .. reg_phy_wr_data_slave_ratio = 0xb5 - // .. .. ==> 0XF8006188[9:0] = 0x000000B5U - // .. .. ==> MASK : 0x000003FFU VAL : 0x000000B5U - // .. .. reg_phy_wr_data_slave_force = 0x0 - // .. .. ==> 0XF8006188[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_data_slave_delay = 0x0 - // .. .. ==> 0XF8006188[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006188, 0x000FFFFFU ,0x000000B5U), - // .. .. reg_phy_bl2 = 0x0 - // .. .. ==> 0XF8006190[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_at_spd_atpg = 0x0 - // .. .. ==> 0XF8006190[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_bist_enable = 0x0 - // .. .. ==> 0XF8006190[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_bist_force_err = 0x0 - // .. .. ==> 0XF8006190[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reg_phy_bist_mode = 0x0 - // .. .. ==> 0XF8006190[6:5] = 0x00000000U - // .. .. ==> MASK : 0x00000060U VAL : 0x00000000U - // .. .. reg_phy_invert_clkout = 0x1 - // .. .. ==> 0XF8006190[7:7] = 0x00000001U - // .. .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. .. reg_phy_sel_logic = 0x0 - // .. .. ==> 0XF8006190[9:9] = 0x00000000U - // .. .. ==> MASK : 0x00000200U VAL : 0x00000000U - // .. .. reg_phy_ctrl_slave_ratio = 0x100 - // .. .. ==> 0XF8006190[19:10] = 0x00000100U - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00040000U - // .. .. reg_phy_ctrl_slave_force = 0x0 - // .. .. ==> 0XF8006190[20:20] = 0x00000000U - // .. .. ==> MASK : 0x00100000U VAL : 0x00000000U - // .. .. reg_phy_ctrl_slave_delay = 0x0 - // .. .. ==> 0XF8006190[27:21] = 0x00000000U - // .. .. ==> MASK : 0x0FE00000U VAL : 0x00000000U - // .. .. reg_phy_lpddr = 0x0 - // .. .. ==> 0XF8006190[29:29] = 0x00000000U - // .. .. ==> MASK : 0x20000000U VAL : 0x00000000U - // .. .. reg_phy_cmd_latency = 0x0 - // .. .. ==> 0XF8006190[30:30] = 0x00000000U - // .. .. ==> MASK : 0x40000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006190, 0x6FFFFEFEU ,0x00040080U), - // .. .. reg_phy_wr_rl_delay = 0x2 - // .. .. ==> 0XF8006194[4:0] = 0x00000002U - // .. .. ==> MASK : 0x0000001FU VAL : 0x00000002U - // .. .. reg_phy_rd_rl_delay = 0x4 - // .. .. ==> 0XF8006194[9:5] = 0x00000004U - // .. .. ==> MASK : 0x000003E0U VAL : 0x00000080U - // .. .. reg_phy_dll_lock_diff = 0xf - // .. .. ==> 0XF8006194[13:10] = 0x0000000FU - // .. .. ==> MASK : 0x00003C00U VAL : 0x00003C00U - // .. .. reg_phy_use_wr_level = 0x1 - // .. .. ==> 0XF8006194[14:14] = 0x00000001U - // .. .. ==> MASK : 0x00004000U VAL : 0x00004000U - // .. .. reg_phy_use_rd_dqs_gate_level = 0x1 - // .. .. ==> 0XF8006194[15:15] = 0x00000001U - // .. .. ==> MASK : 0x00008000U VAL : 0x00008000U - // .. .. reg_phy_use_rd_data_eye_level = 0x1 - // .. .. ==> 0XF8006194[16:16] = 0x00000001U - // .. .. ==> MASK : 0x00010000U VAL : 0x00010000U - // .. .. reg_phy_dis_calib_rst = 0x0 - // .. .. ==> 0XF8006194[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_phy_ctrl_slave_delay = 0x0 - // .. .. ==> 0XF8006194[19:18] = 0x00000000U - // .. .. ==> MASK : 0x000C0000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006194, 0x000FFFFFU ,0x0001FC82U), - // .. .. reg_arb_page_addr_mask = 0x0 - // .. .. ==> 0XF8006204[31:0] = 0x00000000U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006204, 0xFFFFFFFFU ,0x00000000U), - // .. .. reg_arb_pri_wr_portn = 0x3ff - // .. .. ==> 0XF8006208[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_wr_portn = 0x0 - // .. .. ==> 0XF8006208[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_wr_portn = 0x0 - // .. .. ==> 0XF8006208[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_wr_portn = 0x0 - // .. .. ==> 0XF8006208[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006208, 0x000703FFU ,0x000003FFU), - // .. .. reg_arb_pri_wr_portn = 0x3ff - // .. .. ==> 0XF800620C[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_wr_portn = 0x0 - // .. .. ==> 0XF800620C[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_wr_portn = 0x0 - // .. .. ==> 0XF800620C[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_wr_portn = 0x0 - // .. .. ==> 0XF800620C[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800620C, 0x000703FFU ,0x000003FFU), - // .. .. reg_arb_pri_wr_portn = 0x3ff - // .. .. ==> 0XF8006210[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_wr_portn = 0x0 - // .. .. ==> 0XF8006210[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_wr_portn = 0x0 - // .. .. ==> 0XF8006210[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_wr_portn = 0x0 - // .. .. ==> 0XF8006210[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006210, 0x000703FFU ,0x000003FFU), - // .. .. reg_arb_pri_wr_portn = 0x3ff - // .. .. ==> 0XF8006214[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_wr_portn = 0x0 - // .. .. ==> 0XF8006214[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_wr_portn = 0x0 - // .. .. ==> 0XF8006214[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_wr_portn = 0x0 - // .. .. ==> 0XF8006214[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006214, 0x000703FFU ,0x000003FFU), - // .. .. reg_arb_pri_rd_portn = 0x3ff - // .. .. ==> 0XF8006218[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_rd_portn = 0x0 - // .. .. ==> 0XF8006218[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_rd_portn = 0x0 - // .. .. ==> 0XF8006218[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_rd_portn = 0x0 - // .. .. ==> 0XF8006218[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_set_hpr_rd_portn = 0x0 - // .. .. ==> 0XF8006218[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006218, 0x000F03FFU ,0x000003FFU), - // .. .. reg_arb_pri_rd_portn = 0x3ff - // .. .. ==> 0XF800621C[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_rd_portn = 0x0 - // .. .. ==> 0XF800621C[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_rd_portn = 0x0 - // .. .. ==> 0XF800621C[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_rd_portn = 0x0 - // .. .. ==> 0XF800621C[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_set_hpr_rd_portn = 0x0 - // .. .. ==> 0XF800621C[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800621C, 0x000F03FFU ,0x000003FFU), - // .. .. reg_arb_pri_rd_portn = 0x3ff - // .. .. ==> 0XF8006220[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_rd_portn = 0x0 - // .. .. ==> 0XF8006220[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_rd_portn = 0x0 - // .. .. ==> 0XF8006220[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_rd_portn = 0x0 - // .. .. ==> 0XF8006220[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_set_hpr_rd_portn = 0x0 - // .. .. ==> 0XF8006220[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006220, 0x000F03FFU ,0x000003FFU), - // .. .. reg_arb_pri_rd_portn = 0x3ff - // .. .. ==> 0XF8006224[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_rd_portn = 0x0 - // .. .. ==> 0XF8006224[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_rd_portn = 0x0 - // .. .. ==> 0XF8006224[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_rd_portn = 0x0 - // .. .. ==> 0XF8006224[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_set_hpr_rd_portn = 0x0 - // .. .. ==> 0XF8006224[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006224, 0x000F03FFU ,0x000003FFU), - // .. .. reg_ddrc_lpddr2 = 0x0 - // .. .. ==> 0XF80062A8[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_derate_enable = 0x0 - // .. .. ==> 0XF80062A8[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_ddrc_mr4_margin = 0x0 - // .. .. ==> 0XF80062A8[11:4] = 0x00000000U - // .. .. ==> MASK : 0x00000FF0U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80062A8, 0x00000FF5U ,0x00000000U), - // .. .. reg_ddrc_mr4_read_interval = 0x0 - // .. .. ==> 0XF80062AC[31:0] = 0x00000000U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80062AC, 0xFFFFFFFFU ,0x00000000U), - // .. .. reg_ddrc_min_stable_clock_x1 = 0x5 - // .. .. ==> 0XF80062B0[3:0] = 0x00000005U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000005U - // .. .. reg_ddrc_idle_after_reset_x32 = 0x12 - // .. .. ==> 0XF80062B0[11:4] = 0x00000012U - // .. .. ==> MASK : 0x00000FF0U VAL : 0x00000120U - // .. .. reg_ddrc_t_mrw = 0x5 - // .. .. ==> 0XF80062B0[21:12] = 0x00000005U - // .. .. ==> MASK : 0x003FF000U VAL : 0x00005000U - // .. .. - EMIT_MASKWRITE(0XF80062B0, 0x003FFFFFU ,0x00005125U), - // .. .. reg_ddrc_max_auto_init_x1024 = 0xa6 - // .. .. ==> 0XF80062B4[7:0] = 0x000000A6U - // .. .. ==> MASK : 0x000000FFU VAL : 0x000000A6U - // .. .. reg_ddrc_dev_zqinit_x32 = 0x12 - // .. .. ==> 0XF80062B4[17:8] = 0x00000012U - // .. .. ==> MASK : 0x0003FF00U VAL : 0x00001200U - // .. .. - EMIT_MASKWRITE(0XF80062B4, 0x0003FFFFU ,0x000012A6U), - // .. .. START: POLL ON DCI STATUS - // .. .. DONE = 1 - // .. .. ==> 0XF8000B74[13:13] = 0x00000001U - // .. .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. .. - EMIT_MASKPOLL(0XF8000B74, 0x00002000U), - // .. .. FINISH: POLL ON DCI STATUS - // .. .. START: UNLOCK DDR - // .. .. reg_ddrc_soft_rstb = 0x1 - // .. .. ==> 0XF8006000[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_ddrc_powerdown_en = 0x0 - // .. .. ==> 0XF8006000[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_ddrc_data_bus_width = 0x0 - // .. .. ==> 0XF8006000[3:2] = 0x00000000U - // .. .. ==> MASK : 0x0000000CU VAL : 0x00000000U - // .. .. reg_ddrc_burst8_refresh = 0x0 - // .. .. ==> 0XF8006000[6:4] = 0x00000000U - // .. .. ==> MASK : 0x00000070U VAL : 0x00000000U - // .. .. reg_ddrc_rdwr_idle_gap = 1 - // .. .. ==> 0XF8006000[13:7] = 0x00000001U - // .. .. ==> MASK : 0x00003F80U VAL : 0x00000080U - // .. .. reg_ddrc_dis_rd_bypass = 0x0 - // .. .. ==> 0XF8006000[14:14] = 0x00000000U - // .. .. ==> MASK : 0x00004000U VAL : 0x00000000U - // .. .. reg_ddrc_dis_act_bypass = 0x0 - // .. .. ==> 0XF8006000[15:15] = 0x00000000U - // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U - // .. .. reg_ddrc_dis_auto_refresh = 0x0 - // .. .. ==> 0XF8006000[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006000, 0x0001FFFFU ,0x00000081U), - // .. .. FINISH: UNLOCK DDR - // .. .. START: CHECK DDR STATUS - // .. .. ddrc_reg_operating_mode = 1 - // .. .. ==> 0XF8006054[2:0] = 0x00000001U - // .. .. ==> MASK : 0x00000007U VAL : 0x00000001U - // .. .. - EMIT_MASKPOLL(0XF8006054, 0x00000007U), - // .. .. FINISH: CHECK DDR STATUS - // .. FINISH: DDR INITIALIZATION - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_mio_init_data_3_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: OCM REMAPPING - // .. VREF_EN = 0x1 - // .. ==> 0XF8000B00[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. VREF_SEL = 0x0 - // .. ==> 0XF8000B00[6:4] = 0x00000000U - // .. ==> MASK : 0x00000070U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B00, 0x00000071U ,0x00000001U), - // .. FINISH: OCM REMAPPING - // .. START: DDRIOB SETTINGS - // .. reserved_INP_POWER = 0x0 - // .. ==> 0XF8000B40[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x0 - // .. ==> 0XF8000B40[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. DCI_UPDATE_B = 0x0 - // .. ==> 0XF8000B40[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x0 - // .. ==> 0XF8000B40[4:4] = 0x00000000U - // .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. DCI_TYPE = 0x0 - // .. ==> 0XF8000B40[6:5] = 0x00000000U - // .. ==> MASK : 0x00000060U VAL : 0x00000000U - // .. IBUF_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B40[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B40[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B40[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B40[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B40, 0x00000FFFU ,0x00000600U), - // .. reserved_INP_POWER = 0x0 - // .. ==> 0XF8000B44[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x0 - // .. ==> 0XF8000B44[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. DCI_UPDATE_B = 0x0 - // .. ==> 0XF8000B44[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x0 - // .. ==> 0XF8000B44[4:4] = 0x00000000U - // .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. DCI_TYPE = 0x0 - // .. ==> 0XF8000B44[6:5] = 0x00000000U - // .. ==> MASK : 0x00000060U VAL : 0x00000000U - // .. IBUF_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B44[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B44[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B44[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B44[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B44, 0x00000FFFU ,0x00000600U), - // .. reserved_INP_POWER = 0x0 - // .. ==> 0XF8000B48[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x1 - // .. ==> 0XF8000B48[2:1] = 0x00000001U - // .. ==> MASK : 0x00000006U VAL : 0x00000002U - // .. DCI_UPDATE_B = 0x0 - // .. ==> 0XF8000B48[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x1 - // .. ==> 0XF8000B48[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. DCI_TYPE = 0x3 - // .. ==> 0XF8000B48[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. IBUF_DISABLE_MODE = 0 - // .. ==> 0XF8000B48[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0 - // .. ==> 0XF8000B48[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B48[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B48[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B48, 0x00000FFFU ,0x00000672U), - // .. reserved_INP_POWER = 0x0 - // .. ==> 0XF8000B4C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x1 - // .. ==> 0XF8000B4C[2:1] = 0x00000001U - // .. ==> MASK : 0x00000006U VAL : 0x00000002U - // .. DCI_UPDATE_B = 0x0 - // .. ==> 0XF8000B4C[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x1 - // .. ==> 0XF8000B4C[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. DCI_TYPE = 0x3 - // .. ==> 0XF8000B4C[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. IBUF_DISABLE_MODE = 0 - // .. ==> 0XF8000B4C[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0 - // .. ==> 0XF8000B4C[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B4C[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B4C[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B4C, 0x00000FFFU ,0x00000672U), - // .. reserved_INP_POWER = 0x0 - // .. ==> 0XF8000B50[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x2 - // .. ==> 0XF8000B50[2:1] = 0x00000002U - // .. ==> MASK : 0x00000006U VAL : 0x00000004U - // .. DCI_UPDATE_B = 0x0 - // .. ==> 0XF8000B50[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x1 - // .. ==> 0XF8000B50[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. DCI_TYPE = 0x3 - // .. ==> 0XF8000B50[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. IBUF_DISABLE_MODE = 0 - // .. ==> 0XF8000B50[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0 - // .. ==> 0XF8000B50[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B50[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B50[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B50, 0x00000FFFU ,0x00000674U), - // .. reserved_INP_POWER = 0x0 - // .. ==> 0XF8000B54[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x2 - // .. ==> 0XF8000B54[2:1] = 0x00000002U - // .. ==> MASK : 0x00000006U VAL : 0x00000004U - // .. DCI_UPDATE_B = 0x0 - // .. ==> 0XF8000B54[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x1 - // .. ==> 0XF8000B54[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. DCI_TYPE = 0x3 - // .. ==> 0XF8000B54[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. IBUF_DISABLE_MODE = 0 - // .. ==> 0XF8000B54[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0 - // .. ==> 0XF8000B54[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B54[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B54[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B54, 0x00000FFFU ,0x00000674U), - // .. reserved_INP_POWER = 0x0 - // .. ==> 0XF8000B58[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x0 - // .. ==> 0XF8000B58[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. DCI_UPDATE_B = 0x0 - // .. ==> 0XF8000B58[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x0 - // .. ==> 0XF8000B58[4:4] = 0x00000000U - // .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. DCI_TYPE = 0x0 - // .. ==> 0XF8000B58[6:5] = 0x00000000U - // .. ==> MASK : 0x00000060U VAL : 0x00000000U - // .. IBUF_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B58[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B58[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B58[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B58[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B58, 0x00000FFFU ,0x00000600U), - // .. reserved_DRIVE_P = 0x1c - // .. ==> 0XF8000B5C[6:0] = 0x0000001CU - // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU - // .. reserved_DRIVE_N = 0xc - // .. ==> 0XF8000B5C[13:7] = 0x0000000CU - // .. ==> MASK : 0x00003F80U VAL : 0x00000600U - // .. reserved_SLEW_P = 0x3 - // .. ==> 0XF8000B5C[18:14] = 0x00000003U - // .. ==> MASK : 0x0007C000U VAL : 0x0000C000U - // .. reserved_SLEW_N = 0x3 - // .. ==> 0XF8000B5C[23:19] = 0x00000003U - // .. ==> MASK : 0x00F80000U VAL : 0x00180000U - // .. reserved_GTL = 0x0 - // .. ==> 0XF8000B5C[26:24] = 0x00000000U - // .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. reserved_RTERM = 0x0 - // .. ==> 0XF8000B5C[31:27] = 0x00000000U - // .. ==> MASK : 0xF8000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B5C, 0xFFFFFFFFU ,0x0018C61CU), - // .. reserved_DRIVE_P = 0x1c - // .. ==> 0XF8000B60[6:0] = 0x0000001CU - // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU - // .. reserved_DRIVE_N = 0xc - // .. ==> 0XF8000B60[13:7] = 0x0000000CU - // .. ==> MASK : 0x00003F80U VAL : 0x00000600U - // .. reserved_SLEW_P = 0x6 - // .. ==> 0XF8000B60[18:14] = 0x00000006U - // .. ==> MASK : 0x0007C000U VAL : 0x00018000U - // .. reserved_SLEW_N = 0x1f - // .. ==> 0XF8000B60[23:19] = 0x0000001FU - // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U - // .. reserved_GTL = 0x0 - // .. ==> 0XF8000B60[26:24] = 0x00000000U - // .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. reserved_RTERM = 0x0 - // .. ==> 0XF8000B60[31:27] = 0x00000000U - // .. ==> MASK : 0xF8000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B60, 0xFFFFFFFFU ,0x00F9861CU), - // .. reserved_DRIVE_P = 0x1c - // .. ==> 0XF8000B64[6:0] = 0x0000001CU - // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU - // .. reserved_DRIVE_N = 0xc - // .. ==> 0XF8000B64[13:7] = 0x0000000CU - // .. ==> MASK : 0x00003F80U VAL : 0x00000600U - // .. reserved_SLEW_P = 0x6 - // .. ==> 0XF8000B64[18:14] = 0x00000006U - // .. ==> MASK : 0x0007C000U VAL : 0x00018000U - // .. reserved_SLEW_N = 0x1f - // .. ==> 0XF8000B64[23:19] = 0x0000001FU - // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U - // .. reserved_GTL = 0x0 - // .. ==> 0XF8000B64[26:24] = 0x00000000U - // .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. reserved_RTERM = 0x0 - // .. ==> 0XF8000B64[31:27] = 0x00000000U - // .. ==> MASK : 0xF8000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B64, 0xFFFFFFFFU ,0x00F9861CU), - // .. reserved_DRIVE_P = 0x1c - // .. ==> 0XF8000B68[6:0] = 0x0000001CU - // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU - // .. reserved_DRIVE_N = 0xc - // .. ==> 0XF8000B68[13:7] = 0x0000000CU - // .. ==> MASK : 0x00003F80U VAL : 0x00000600U - // .. reserved_SLEW_P = 0x6 - // .. ==> 0XF8000B68[18:14] = 0x00000006U - // .. ==> MASK : 0x0007C000U VAL : 0x00018000U - // .. reserved_SLEW_N = 0x1f - // .. ==> 0XF8000B68[23:19] = 0x0000001FU - // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U - // .. reserved_GTL = 0x0 - // .. ==> 0XF8000B68[26:24] = 0x00000000U - // .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. reserved_RTERM = 0x0 - // .. ==> 0XF8000B68[31:27] = 0x00000000U - // .. ==> MASK : 0xF8000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B68, 0xFFFFFFFFU ,0x00F9861CU), - // .. VREF_INT_EN = 0x0 - // .. ==> 0XF8000B6C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. VREF_SEL = 0x0 - // .. ==> 0XF8000B6C[4:1] = 0x00000000U - // .. ==> MASK : 0x0000001EU VAL : 0x00000000U - // .. VREF_EXT_EN = 0x3 - // .. ==> 0XF8000B6C[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. reserved_VREF_PULLUP_EN = 0x0 - // .. ==> 0XF8000B6C[8:7] = 0x00000000U - // .. ==> MASK : 0x00000180U VAL : 0x00000000U - // .. REFIO_EN = 0x1 - // .. ==> 0XF8000B6C[9:9] = 0x00000001U - // .. ==> MASK : 0x00000200U VAL : 0x00000200U - // .. reserved_REFIO_TEST = 0x0 - // .. ==> 0XF8000B6C[11:10] = 0x00000000U - // .. ==> MASK : 0x00000C00U VAL : 0x00000000U - // .. reserved_REFIO_PULLUP_EN = 0x0 - // .. ==> 0XF8000B6C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. reserved_DRST_B_PULLUP_EN = 0x0 - // .. ==> 0XF8000B6C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. reserved_CKE_PULLUP_EN = 0x0 - // .. ==> 0XF8000B6C[14:14] = 0x00000000U - // .. ==> MASK : 0x00004000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B6C, 0x00007FFFU ,0x00000260U), - // .. .. START: ASSERT RESET - // .. .. RESET = 1 - // .. .. ==> 0XF8000B70[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. - EMIT_MASKWRITE(0XF8000B70, 0x00000001U ,0x00000001U), - // .. .. FINISH: ASSERT RESET - // .. .. START: DEASSERT RESET - // .. .. RESET = 0 - // .. .. ==> 0XF8000B70[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reserved_VRN_OUT = 0x1 - // .. .. ==> 0XF8000B70[5:5] = 0x00000001U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000020U - // .. .. - EMIT_MASKWRITE(0XF8000B70, 0x00000021U ,0x00000020U), - // .. .. FINISH: DEASSERT RESET - // .. .. RESET = 0x1 - // .. .. ==> 0XF8000B70[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. ENABLE = 0x1 - // .. .. ==> 0XF8000B70[1:1] = 0x00000001U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. .. reserved_VRP_TRI = 0x0 - // .. .. ==> 0XF8000B70[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reserved_VRN_TRI = 0x0 - // .. .. ==> 0XF8000B70[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reserved_VRP_OUT = 0x0 - // .. .. ==> 0XF8000B70[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reserved_VRN_OUT = 0x1 - // .. .. ==> 0XF8000B70[5:5] = 0x00000001U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000020U - // .. .. NREF_OPT1 = 0x0 - // .. .. ==> 0XF8000B70[7:6] = 0x00000000U - // .. .. ==> MASK : 0x000000C0U VAL : 0x00000000U - // .. .. NREF_OPT2 = 0x0 - // .. .. ==> 0XF8000B70[10:8] = 0x00000000U - // .. .. ==> MASK : 0x00000700U VAL : 0x00000000U - // .. .. NREF_OPT4 = 0x1 - // .. .. ==> 0XF8000B70[13:11] = 0x00000001U - // .. .. ==> MASK : 0x00003800U VAL : 0x00000800U - // .. .. PREF_OPT1 = 0x0 - // .. .. ==> 0XF8000B70[15:14] = 0x00000000U - // .. .. ==> MASK : 0x0000C000U VAL : 0x00000000U - // .. .. PREF_OPT2 = 0x0 - // .. .. ==> 0XF8000B70[19:17] = 0x00000000U - // .. .. ==> MASK : 0x000E0000U VAL : 0x00000000U - // .. .. UPDATE_CONTROL = 0x0 - // .. .. ==> 0XF8000B70[20:20] = 0x00000000U - // .. .. ==> MASK : 0x00100000U VAL : 0x00000000U - // .. .. reserved_INIT_COMPLETE = 0x0 - // .. .. ==> 0XF8000B70[21:21] = 0x00000000U - // .. .. ==> MASK : 0x00200000U VAL : 0x00000000U - // .. .. reserved_TST_CLK = 0x0 - // .. .. ==> 0XF8000B70[22:22] = 0x00000000U - // .. .. ==> MASK : 0x00400000U VAL : 0x00000000U - // .. .. reserved_TST_HLN = 0x0 - // .. .. ==> 0XF8000B70[23:23] = 0x00000000U - // .. .. ==> MASK : 0x00800000U VAL : 0x00000000U - // .. .. reserved_TST_HLP = 0x0 - // .. .. ==> 0XF8000B70[24:24] = 0x00000000U - // .. .. ==> MASK : 0x01000000U VAL : 0x00000000U - // .. .. reserved_TST_RST = 0x0 - // .. .. ==> 0XF8000B70[25:25] = 0x00000000U - // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U - // .. .. reserved_INT_DCI_EN = 0x0 - // .. .. ==> 0XF8000B70[26:26] = 0x00000000U - // .. .. ==> MASK : 0x04000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8000B70, 0x07FEFFFFU ,0x00000823U), - // .. FINISH: DDRIOB SETTINGS - // .. START: MIO PROGRAMMING - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000700[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000700[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000700[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000700[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000700[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF8000700[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000700[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000700[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000700[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000700, 0x00003FFFU ,0x00001600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000704[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000704[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000704[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000704[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000704[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000704[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000704[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000704[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000704[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000704, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000708[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000708[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000708[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000708[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000708[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000708[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000708[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000708[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000708[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000708, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800070C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF800070C[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF800070C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800070C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800070C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800070C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF800070C[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF800070C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800070C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800070C, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000710[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000710[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000710[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000710[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000710[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000710[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000710[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000710[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000710[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000710, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000714[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000714[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000714[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000714[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000714[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000714[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000714[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000714[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000714[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000714, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000718[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000718[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000718[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000718[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000718[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000718[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000718[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000718[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000718[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000718, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800071C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800071C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF800071C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800071C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800071C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF800071C[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF800071C[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF800071C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800071C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800071C, 0x00003FFFU ,0x00000600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000720[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000720[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000720[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000720[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000720[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000720[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000720[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000720[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000720[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000720, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000724[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000724[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000724[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000724[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000724[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF8000724[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000724[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000724[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000724[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000724, 0x00003FFFU ,0x00001600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000728[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000728[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000728[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000728[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 2 - // .. ==> 0XF8000728[7:5] = 0x00000002U - // .. ==> MASK : 0x000000E0U VAL : 0x00000040U - // .. Speed = 0 - // .. ==> 0XF8000728[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000728[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000728[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000728[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000728, 0x00003FFFU ,0x00001640U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800072C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800072C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF800072C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800072C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 2 - // .. ==> 0XF800072C[7:5] = 0x00000002U - // .. ==> MASK : 0x000000E0U VAL : 0x00000040U - // .. Speed = 0 - // .. ==> 0XF800072C[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF800072C[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF800072C[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF800072C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800072C, 0x00003FFFU ,0x00001640U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000730[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000730[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000730[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000730[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 2 - // .. ==> 0XF8000730[7:5] = 0x00000002U - // .. ==> MASK : 0x000000E0U VAL : 0x00000040U - // .. Speed = 0 - // .. ==> 0XF8000730[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000730[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000730[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000730[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000730, 0x00003FFFU ,0x00001640U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000734[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000734[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000734[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000734[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 2 - // .. ==> 0XF8000734[7:5] = 0x00000002U - // .. ==> MASK : 0x000000E0U VAL : 0x00000040U - // .. Speed = 0 - // .. ==> 0XF8000734[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000734[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000734[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000734[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000734, 0x00003FFFU ,0x00001640U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000738[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000738[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000738[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000738[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000738[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF8000738[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000738[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000738[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000738[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000738, 0x00003FFFU ,0x00001600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800073C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800073C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF800073C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800073C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800073C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF800073C[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF800073C[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF800073C[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF800073C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800073C, 0x00003FFFU ,0x00001600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000740[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000740[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000740[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000740[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000740[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000740[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000740[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000740[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000740[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000740, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000744[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000744[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000744[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000744[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000744[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000744[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000744[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000744[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000744[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000744, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000748[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000748[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000748[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000748[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000748[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000748[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000748[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000748[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000748[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000748, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800074C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF800074C[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF800074C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800074C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800074C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800074C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF800074C[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF800074C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF800074C[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF800074C, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000750[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000750[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000750[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000750[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000750[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000750[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000750[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000750[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000750[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000750, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000754[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000754[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000754[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000754[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000754[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000754[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000754[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000754[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000754[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000754, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000758[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF8000758[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000758[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000758[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000758[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000758[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000758[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000758[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000758[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000758, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF800075C[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF800075C[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF800075C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800075C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800075C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800075C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF800075C[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF800075C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800075C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800075C, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000760[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF8000760[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000760[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000760[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000760[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000760[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000760[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000760[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000760[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000760, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000764[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF8000764[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000764[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000764[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000764[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000764[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000764[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000764[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000764[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000764, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000768[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF8000768[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000768[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000768[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000768[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000768[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000768[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000768[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000768[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000768, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF800076C[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF800076C[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF800076C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800076C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800076C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800076C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF800076C[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF800076C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800076C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800076C, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000770[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000770[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000770[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000770[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000770[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000770[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000770[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000770[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000770[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000770, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000774[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 0 - // .. ==> 0XF8000774[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000774[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000774[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000774[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000774[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000774[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000774[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000774[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000774, 0x00003FFFU ,0x00000305U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000778[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000778[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000778[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000778[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000778[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000778[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000778[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000778[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000778[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000778, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF800077C[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 0 - // .. ==> 0XF800077C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF800077C[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF800077C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800077C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800077C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF800077C[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF800077C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800077C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800077C, 0x00003FFFU ,0x00000305U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000780[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000780[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000780[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000780[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000780[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000780[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000780[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000780[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000780[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000780, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000784[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000784[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000784[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000784[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000784[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000784[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000784[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000784[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000784[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000784, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000788[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000788[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000788[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000788[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000788[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000788[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000788[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000788[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000788[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000788, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800078C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800078C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF800078C[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF800078C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800078C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800078C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF800078C[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF800078C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800078C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800078C, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000790[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 0 - // .. ==> 0XF8000790[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000790[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000790[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000790[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000790[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000790[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000790[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000790[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000790, 0x00003FFFU ,0x00000305U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000794[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000794[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000794[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000794[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000794[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000794[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000794[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000794[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000794[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000794, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000798[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000798[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000798[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000798[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000798[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000798[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000798[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000798[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000798[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000798, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800079C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800079C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF800079C[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF800079C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800079C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800079C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF800079C[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF800079C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800079C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800079C, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007A0[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007A0[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007A0[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007A0[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007A0[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007A0[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007A0[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007A0[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007A0[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007A0, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007A4[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007A4[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007A4[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007A4[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007A4[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007A4[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007A4[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007A4[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007A4[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007A4, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007A8[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007A8[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007A8[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007A8[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007A8[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007A8[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007A8[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007A8[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007A8[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007A8, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007AC[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007AC[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007AC[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007AC[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007AC[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007AC[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007AC[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007AC[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007AC[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007AC, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007B0[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007B0[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007B0[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007B0[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007B0[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007B0[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007B0[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007B0[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007B0[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007B0, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007B4[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007B4[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007B4[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007B4[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007B4[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007B4[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007B4[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007B4[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007B4[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007B4, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007B8[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007B8[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007B8[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007B8[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007B8[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007B8[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007B8[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 1 - // .. ==> 0XF80007B8[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007B8[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007B8, 0x00003FFFU ,0x00001200U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF80007BC[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. Speed = 0 - // .. ==> 0XF80007BC[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007BC[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007BC[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007BC[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007BC, 0x00003F01U ,0x00000201U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007C0[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007C0[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007C0[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007C0[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 7 - // .. ==> 0XF80007C0[7:5] = 0x00000007U - // .. ==> MASK : 0x000000E0U VAL : 0x000000E0U - // .. Speed = 0 - // .. ==> 0XF80007C0[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007C0[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007C0[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007C0[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007C0, 0x00003FFFU ,0x000002E0U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF80007C4[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 0 - // .. ==> 0XF80007C4[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007C4[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007C4[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 7 - // .. ==> 0XF80007C4[7:5] = 0x00000007U - // .. ==> MASK : 0x000000E0U VAL : 0x000000E0U - // .. Speed = 0 - // .. ==> 0XF80007C4[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007C4[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007C4[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007C4[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007C4, 0x00003FFFU ,0x000002E1U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007C8[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007C8[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007C8[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007C8[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007C8[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007C8[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007C8[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007C8[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007C8[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007C8, 0x00003FFFU ,0x00000200U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007CC[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007CC[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007CC[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007CC[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007CC[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007CC[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007CC[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007CC[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007CC[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007CC, 0x00003FFFU ,0x00000200U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007D0[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007D0[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007D0[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007D0[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007D0[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007D0[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007D0[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007D0[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007D0[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007D0, 0x00003FFFU ,0x00000200U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007D4[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007D4[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007D4[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007D4[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007D4[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007D4[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007D4[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007D4[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007D4[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007D4, 0x00003FFFU ,0x00000200U), - // .. SDIO0_WP_SEL = 55 - // .. ==> 0XF8000830[5:0] = 0x00000037U - // .. ==> MASK : 0x0000003FU VAL : 0x00000037U - // .. SDIO0_CD_SEL = 47 - // .. ==> 0XF8000830[21:16] = 0x0000002FU - // .. ==> MASK : 0x003F0000U VAL : 0x002F0000U - // .. - EMIT_MASKWRITE(0XF8000830, 0x003F003FU ,0x002F0037U), - // .. FINISH: MIO PROGRAMMING - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_peripherals_init_data_3_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: DDR TERM/IBUF_DISABLE_MODE SETTINGS - // .. IBUF_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B48[7:7] = 0x00000001U - // .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. TERM_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B48[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. - EMIT_MASKWRITE(0XF8000B48, 0x00000180U ,0x00000180U), - // .. IBUF_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B4C[7:7] = 0x00000001U - // .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. TERM_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B4C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. - EMIT_MASKWRITE(0XF8000B4C, 0x00000180U ,0x00000180U), - // .. IBUF_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B50[7:7] = 0x00000001U - // .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. TERM_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B50[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. - EMIT_MASKWRITE(0XF8000B50, 0x00000180U ,0x00000180U), - // .. IBUF_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B54[7:7] = 0x00000001U - // .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. TERM_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B54[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. - EMIT_MASKWRITE(0XF8000B54, 0x00000180U ,0x00000180U), - // .. FINISH: DDR TERM/IBUF_DISABLE_MODE SETTINGS - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // .. START: SRAM/NOR SET OPMODE - // .. FINISH: SRAM/NOR SET OPMODE - // .. START: UART REGISTERS - // .. BDIV = 0x6 - // .. ==> 0XE0001034[7:0] = 0x00000006U - // .. ==> MASK : 0x000000FFU VAL : 0x00000006U - // .. - EMIT_MASKWRITE(0XE0001034, 0x000000FFU ,0x00000006U), - // .. CD = 0x7c - // .. ==> 0XE0001018[15:0] = 0x0000007CU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000007CU - // .. - EMIT_MASKWRITE(0XE0001018, 0x0000FFFFU ,0x0000007CU), - // .. STPBRK = 0x0 - // .. ==> 0XE0001000[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. STTBRK = 0x0 - // .. ==> 0XE0001000[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. RSTTO = 0x0 - // .. ==> 0XE0001000[6:6] = 0x00000000U - // .. ==> MASK : 0x00000040U VAL : 0x00000000U - // .. TXDIS = 0x0 - // .. ==> 0XE0001000[5:5] = 0x00000000U - // .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. TXEN = 0x1 - // .. ==> 0XE0001000[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. RXDIS = 0x0 - // .. ==> 0XE0001000[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. RXEN = 0x1 - // .. ==> 0XE0001000[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. TXRES = 0x1 - // .. ==> 0XE0001000[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. RXRES = 0x1 - // .. ==> 0XE0001000[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. - EMIT_MASKWRITE(0XE0001000, 0x000001FFU ,0x00000017U), - // .. CHMODE = 0x0 - // .. ==> 0XE0001004[9:8] = 0x00000000U - // .. ==> MASK : 0x00000300U VAL : 0x00000000U - // .. NBSTOP = 0x0 - // .. ==> 0XE0001004[7:6] = 0x00000000U - // .. ==> MASK : 0x000000C0U VAL : 0x00000000U - // .. PAR = 0x4 - // .. ==> 0XE0001004[5:3] = 0x00000004U - // .. ==> MASK : 0x00000038U VAL : 0x00000020U - // .. CHRL = 0x0 - // .. ==> 0XE0001004[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. CLKS = 0x0 - // .. ==> 0XE0001004[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XE0001004, 0x000003FFU ,0x00000020U), - // .. BDIV = 0x6 - // .. ==> 0XE0000034[7:0] = 0x00000006U - // .. ==> MASK : 0x000000FFU VAL : 0x00000006U - // .. - EMIT_MASKWRITE(0XE0000034, 0x000000FFU ,0x00000006U), - // .. CD = 0x7c - // .. ==> 0XE0000018[15:0] = 0x0000007CU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000007CU - // .. - EMIT_MASKWRITE(0XE0000018, 0x0000FFFFU ,0x0000007CU), - // .. STPBRK = 0x0 - // .. ==> 0XE0000000[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. STTBRK = 0x0 - // .. ==> 0XE0000000[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. RSTTO = 0x0 - // .. ==> 0XE0000000[6:6] = 0x00000000U - // .. ==> MASK : 0x00000040U VAL : 0x00000000U - // .. TXDIS = 0x0 - // .. ==> 0XE0000000[5:5] = 0x00000000U - // .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. TXEN = 0x1 - // .. ==> 0XE0000000[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. RXDIS = 0x0 - // .. ==> 0XE0000000[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. RXEN = 0x1 - // .. ==> 0XE0000000[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. TXRES = 0x1 - // .. ==> 0XE0000000[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. RXRES = 0x1 - // .. ==> 0XE0000000[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. - EMIT_MASKWRITE(0XE0000000, 0x000001FFU ,0x00000017U), - // .. CHMODE = 0x0 - // .. ==> 0XE0000004[9:8] = 0x00000000U - // .. ==> MASK : 0x00000300U VAL : 0x00000000U - // .. NBSTOP = 0x0 - // .. ==> 0XE0000004[7:6] = 0x00000000U - // .. ==> MASK : 0x000000C0U VAL : 0x00000000U - // .. PAR = 0x4 - // .. ==> 0XE0000004[5:3] = 0x00000004U - // .. ==> MASK : 0x00000038U VAL : 0x00000020U - // .. CHRL = 0x0 - // .. ==> 0XE0000004[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. CLKS = 0x0 - // .. ==> 0XE0000004[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XE0000004, 0x000003FFU ,0x00000020U), - // .. FINISH: UART REGISTERS - // .. START: QSPI REGISTERS - // .. Holdb_dr = 1 - // .. ==> 0XE000D000[19:19] = 0x00000001U - // .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. - EMIT_MASKWRITE(0XE000D000, 0x00080000U ,0x00080000U), - // .. FINISH: QSPI REGISTERS - // .. START: PL POWER ON RESET REGISTERS - // .. PCFG_POR_CNT_4K = 0 - // .. ==> 0XF8007000[29:29] = 0x00000000U - // .. ==> MASK : 0x20000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8007000, 0x20000000U ,0x00000000U), - // .. FINISH: PL POWER ON RESET REGISTERS - // .. START: SMC TIMING CALCULATION REGISTER UPDATE - // .. .. START: NAND SET CYCLE - // .. .. FINISH: NAND SET CYCLE - // .. .. START: OPMODE - // .. .. FINISH: OPMODE - // .. .. START: DIRECT COMMAND - // .. .. FINISH: DIRECT COMMAND - // .. .. START: SRAM/NOR CS0 SET CYCLE - // .. .. FINISH: SRAM/NOR CS0 SET CYCLE - // .. .. START: DIRECT COMMAND - // .. .. FINISH: DIRECT COMMAND - // .. .. START: NOR CS0 BASE ADDRESS - // .. .. FINISH: NOR CS0 BASE ADDRESS - // .. .. START: SRAM/NOR CS1 SET CYCLE - // .. .. FINISH: SRAM/NOR CS1 SET CYCLE - // .. .. START: DIRECT COMMAND - // .. .. FINISH: DIRECT COMMAND - // .. .. START: NOR CS1 BASE ADDRESS - // .. .. FINISH: NOR CS1 BASE ADDRESS - // .. .. START: USB RESET - // .. .. .. START: USB0 RESET - // .. .. .. .. START: DIR MODE BANK 0 - // .. .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. .. START: DIR MODE BANK 1 - // .. .. .. .. DIRECTION_1 = 0x4000 - // .. .. .. .. ==> 0XE000A244[21:0] = 0x00004000U - // .. .. .. .. ==> MASK : 0x003FFFFFU VAL : 0x00004000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A244, 0x003FFFFFU ,0x00004000U), - // .. .. .. .. FINISH: DIR MODE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. MASK_1_LSW = 0xbfff - // .. .. .. .. ==> 0XE000A008[31:16] = 0x0000BFFFU - // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xBFFF0000U - // .. .. .. .. DATA_1_LSW = 0x4000 - // .. .. .. .. ==> 0XE000A008[15:0] = 0x00004000U - // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00004000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A008, 0xFFFFFFFFU ,0xBFFF4000U), - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. .. .. START: OUTPUT ENABLE BANK 1 - // .. .. .. .. OP_ENABLE_1 = 0x4000 - // .. .. .. .. ==> 0XE000A248[21:0] = 0x00004000U - // .. .. .. .. ==> MASK : 0x003FFFFFU VAL : 0x00004000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A248, 0x003FFFFFU ,0x00004000U), - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. MASK_1_LSW = 0xbfff - // .. .. .. .. ==> 0XE000A008[31:16] = 0x0000BFFFU - // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xBFFF0000U - // .. .. .. .. DATA_1_LSW = 0x0 - // .. .. .. .. ==> 0XE000A008[15:0] = 0x00000000U - // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A008, 0xFFFFFFFFU ,0xBFFF0000U), - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. MASK_1_LSW = 0xbfff - // .. .. .. .. ==> 0XE000A008[31:16] = 0x0000BFFFU - // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xBFFF0000U - // .. .. .. .. DATA_1_LSW = 0x4000 - // .. .. .. .. ==> 0XE000A008[15:0] = 0x00004000U - // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00004000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A008, 0xFFFFFFFFU ,0xBFFF4000U), - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: USB0 RESET - // .. .. .. START: USB1 RESET - // .. .. .. .. START: DIR MODE BANK 0 - // .. .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. .. START: DIR MODE BANK 1 - // .. .. .. .. FINISH: DIR MODE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. .. .. START: OUTPUT ENABLE BANK 1 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: USB1 RESET - // .. .. FINISH: USB RESET - // .. .. START: ENET RESET - // .. .. .. START: ENET0 RESET - // .. .. .. .. START: DIR MODE BANK 0 - // .. .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. .. START: DIR MODE BANK 1 - // .. .. .. .. FINISH: DIR MODE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. .. .. START: OUTPUT ENABLE BANK 1 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: ENET0 RESET - // .. .. .. START: ENET1 RESET - // .. .. .. .. START: DIR MODE BANK 0 - // .. .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. .. START: DIR MODE BANK 1 - // .. .. .. .. FINISH: DIR MODE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. .. .. START: OUTPUT ENABLE BANK 1 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: ENET1 RESET - // .. .. FINISH: ENET RESET - // .. .. START: I2C RESET - // .. .. .. START: I2C0 RESET - // .. .. .. .. START: DIR MODE GPIO BANK0 - // .. .. .. .. FINISH: DIR MODE GPIO BANK0 - // .. .. .. .. START: DIR MODE GPIO BANK1 - // .. .. .. .. FINISH: DIR MODE GPIO BANK1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE - // .. .. .. .. FINISH: OUTPUT ENABLE - // .. .. .. .. START: OUTPUT ENABLE - // .. .. .. .. FINISH: OUTPUT ENABLE - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: I2C0 RESET - // .. .. .. START: I2C1 RESET - // .. .. .. .. START: DIR MODE GPIO BANK0 - // .. .. .. .. FINISH: DIR MODE GPIO BANK0 - // .. .. .. .. START: DIR MODE GPIO BANK1 - // .. .. .. .. FINISH: DIR MODE GPIO BANK1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE - // .. .. .. .. FINISH: OUTPUT ENABLE - // .. .. .. .. START: OUTPUT ENABLE - // .. .. .. .. FINISH: OUTPUT ENABLE - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: I2C1 RESET - // .. .. FINISH: I2C RESET - // .. .. START: NOR CHIP SELECT - // .. .. .. START: DIR MODE BANK 0 - // .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. FINISH: NOR CHIP SELECT - // .. FINISH: SMC TIMING CALCULATION REGISTER UPDATE - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_post_config_3_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: ENABLING LEVEL SHIFTER - // .. USER_LVL_INP_EN_0 = 1 - // .. ==> 0XF8000900[3:3] = 0x00000001U - // .. ==> MASK : 0x00000008U VAL : 0x00000008U - // .. USER_LVL_OUT_EN_0 = 1 - // .. ==> 0XF8000900[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. USER_LVL_INP_EN_1 = 1 - // .. ==> 0XF8000900[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. USER_LVL_OUT_EN_1 = 1 - // .. ==> 0XF8000900[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. - EMIT_MASKWRITE(0XF8000900, 0x0000000FU ,0x0000000FU), - // .. FINISH: ENABLING LEVEL SHIFTER - // .. START: FPGA RESETS TO 0 - // .. reserved_3 = 0 - // .. ==> 0XF8000240[31:25] = 0x00000000U - // .. ==> MASK : 0xFE000000U VAL : 0x00000000U - // .. reserved_FPGA_ACP_RST = 0 - // .. ==> 0XF8000240[24:24] = 0x00000000U - // .. ==> MASK : 0x01000000U VAL : 0x00000000U - // .. reserved_FPGA_AXDS3_RST = 0 - // .. ==> 0XF8000240[23:23] = 0x00000000U - // .. ==> MASK : 0x00800000U VAL : 0x00000000U - // .. reserved_FPGA_AXDS2_RST = 0 - // .. ==> 0XF8000240[22:22] = 0x00000000U - // .. ==> MASK : 0x00400000U VAL : 0x00000000U - // .. reserved_FPGA_AXDS1_RST = 0 - // .. ==> 0XF8000240[21:21] = 0x00000000U - // .. ==> MASK : 0x00200000U VAL : 0x00000000U - // .. reserved_FPGA_AXDS0_RST = 0 - // .. ==> 0XF8000240[20:20] = 0x00000000U - // .. ==> MASK : 0x00100000U VAL : 0x00000000U - // .. reserved_2 = 0 - // .. ==> 0XF8000240[19:18] = 0x00000000U - // .. ==> MASK : 0x000C0000U VAL : 0x00000000U - // .. reserved_FSSW1_FPGA_RST = 0 - // .. ==> 0XF8000240[17:17] = 0x00000000U - // .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. reserved_FSSW0_FPGA_RST = 0 - // .. ==> 0XF8000240[16:16] = 0x00000000U - // .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. reserved_1 = 0 - // .. ==> 0XF8000240[15:14] = 0x00000000U - // .. ==> MASK : 0x0000C000U VAL : 0x00000000U - // .. reserved_FPGA_FMSW1_RST = 0 - // .. ==> 0XF8000240[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. reserved_FPGA_FMSW0_RST = 0 - // .. ==> 0XF8000240[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. reserved_FPGA_DMA3_RST = 0 - // .. ==> 0XF8000240[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. reserved_FPGA_DMA2_RST = 0 - // .. ==> 0XF8000240[10:10] = 0x00000000U - // .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. reserved_FPGA_DMA1_RST = 0 - // .. ==> 0XF8000240[9:9] = 0x00000000U - // .. ==> MASK : 0x00000200U VAL : 0x00000000U - // .. reserved_FPGA_DMA0_RST = 0 - // .. ==> 0XF8000240[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. reserved = 0 - // .. ==> 0XF8000240[7:4] = 0x00000000U - // .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. FPGA3_OUT_RST = 0 - // .. ==> 0XF8000240[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. FPGA2_OUT_RST = 0 - // .. ==> 0XF8000240[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. FPGA1_OUT_RST = 0 - // .. ==> 0XF8000240[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. FPGA0_OUT_RST = 0 - // .. ==> 0XF8000240[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000240, 0xFFFFFFFFU ,0x00000000U), - // .. FINISH: FPGA RESETS TO 0 - // .. START: AFI REGISTERS - // .. .. START: AFI0 REGISTERS - // .. .. FINISH: AFI0 REGISTERS - // .. .. START: AFI1 REGISTERS - // .. .. FINISH: AFI1 REGISTERS - // .. .. START: AFI2 REGISTERS - // .. .. FINISH: AFI2 REGISTERS - // .. .. START: AFI3 REGISTERS - // .. .. FINISH: AFI3 REGISTERS - // .. .. START: AFI2 SECURE REGISTER - // .. .. FINISH: AFI2 SECURE REGISTER - // .. FINISH: AFI REGISTERS - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_debug_3_0[] = { - // START: top - // .. START: CROSS TRIGGER CONFIGURATIONS - // .. .. START: UNLOCKING CTI REGISTERS - // .. .. KEY = 0XC5ACCE55 - // .. .. ==> 0XF8898FB0[31:0] = 0xC5ACCE55U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U - // .. .. - EMIT_WRITE(0XF8898FB0, 0xC5ACCE55U), - // .. .. KEY = 0XC5ACCE55 - // .. .. ==> 0XF8899FB0[31:0] = 0xC5ACCE55U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U - // .. .. - EMIT_WRITE(0XF8899FB0, 0xC5ACCE55U), - // .. .. KEY = 0XC5ACCE55 - // .. .. ==> 0XF8809FB0[31:0] = 0xC5ACCE55U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U - // .. .. - EMIT_WRITE(0XF8809FB0, 0xC5ACCE55U), - // .. .. FINISH: UNLOCKING CTI REGISTERS - // .. .. START: ENABLING CTI MODULES AND CHANNELS - // .. .. FINISH: ENABLING CTI MODULES AND CHANNELS - // .. .. START: MAPPING CPU0, CPU1 AND FTM EVENTS TO CTM CHANNELS - // .. .. FINISH: MAPPING CPU0, CPU1 AND FTM EVENTS TO CTM CHANNELS - // .. FINISH: CROSS TRIGGER CONFIGURATIONS - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_pll_init_data_2_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: PLL SLCR REGISTERS - // .. .. START: ARM PLL INIT - // .. .. PLL_RES = 0xc - // .. .. ==> 0XF8000110[7:4] = 0x0000000CU - // .. .. ==> MASK : 0x000000F0U VAL : 0x000000C0U - // .. .. PLL_CP = 0x2 - // .. .. ==> 0XF8000110[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. LOCK_CNT = 0x177 - // .. .. ==> 0XF8000110[21:12] = 0x00000177U - // .. .. ==> MASK : 0x003FF000U VAL : 0x00177000U - // .. .. - EMIT_MASKWRITE(0XF8000110, 0x003FFFF0U ,0x001772C0U), - // .. .. .. START: UPDATE FB_DIV - // .. .. .. PLL_FDIV = 0x1a - // .. .. .. ==> 0XF8000100[18:12] = 0x0000001AU - // .. .. .. ==> MASK : 0x0007F000U VAL : 0x0001A000U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x0007F000U ,0x0001A000U), - // .. .. .. FINISH: UPDATE FB_DIV - // .. .. .. START: BY PASS PLL - // .. .. .. PLL_BYPASS_FORCE = 1 - // .. .. .. ==> 0XF8000100[4:4] = 0x00000001U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x00000010U ,0x00000010U), - // .. .. .. FINISH: BY PASS PLL - // .. .. .. START: ASSERT RESET - // .. .. .. PLL_RESET = 1 - // .. .. .. ==> 0XF8000100[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x00000001U ,0x00000001U), - // .. .. .. FINISH: ASSERT RESET - // .. .. .. START: DEASSERT RESET - // .. .. .. PLL_RESET = 0 - // .. .. .. ==> 0XF8000100[0:0] = 0x00000000U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x00000001U ,0x00000000U), - // .. .. .. FINISH: DEASSERT RESET - // .. .. .. START: CHECK PLL STATUS - // .. .. .. ARM_PLL_LOCK = 1 - // .. .. .. ==> 0XF800010C[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. - EMIT_MASKPOLL(0XF800010C, 0x00000001U), - // .. .. .. FINISH: CHECK PLL STATUS - // .. .. .. START: REMOVE PLL BY PASS - // .. .. .. PLL_BYPASS_FORCE = 0 - // .. .. .. ==> 0XF8000100[4:4] = 0x00000000U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x00000010U ,0x00000000U), - // .. .. .. FINISH: REMOVE PLL BY PASS - // .. .. .. SRCSEL = 0x0 - // .. .. .. ==> 0XF8000120[5:4] = 0x00000000U - // .. .. .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. .. .. DIVISOR = 0x2 - // .. .. .. ==> 0XF8000120[13:8] = 0x00000002U - // .. .. .. ==> MASK : 0x00003F00U VAL : 0x00000200U - // .. .. .. CPU_6OR4XCLKACT = 0x1 - // .. .. .. ==> 0XF8000120[24:24] = 0x00000001U - // .. .. .. ==> MASK : 0x01000000U VAL : 0x01000000U - // .. .. .. CPU_3OR2XCLKACT = 0x1 - // .. .. .. ==> 0XF8000120[25:25] = 0x00000001U - // .. .. .. ==> MASK : 0x02000000U VAL : 0x02000000U - // .. .. .. CPU_2XCLKACT = 0x1 - // .. .. .. ==> 0XF8000120[26:26] = 0x00000001U - // .. .. .. ==> MASK : 0x04000000U VAL : 0x04000000U - // .. .. .. CPU_1XCLKACT = 0x1 - // .. .. .. ==> 0XF8000120[27:27] = 0x00000001U - // .. .. .. ==> MASK : 0x08000000U VAL : 0x08000000U - // .. .. .. CPU_PERI_CLKACT = 0x1 - // .. .. .. ==> 0XF8000120[28:28] = 0x00000001U - // .. .. .. ==> MASK : 0x10000000U VAL : 0x10000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000120, 0x1F003F30U ,0x1F000200U), - // .. .. FINISH: ARM PLL INIT - // .. .. START: DDR PLL INIT - // .. .. PLL_RES = 0xc - // .. .. ==> 0XF8000114[7:4] = 0x0000000CU - // .. .. ==> MASK : 0x000000F0U VAL : 0x000000C0U - // .. .. PLL_CP = 0x2 - // .. .. ==> 0XF8000114[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. LOCK_CNT = 0x1db - // .. .. ==> 0XF8000114[21:12] = 0x000001DBU - // .. .. ==> MASK : 0x003FF000U VAL : 0x001DB000U - // .. .. - EMIT_MASKWRITE(0XF8000114, 0x003FFFF0U ,0x001DB2C0U), - // .. .. .. START: UPDATE FB_DIV - // .. .. .. PLL_FDIV = 0x15 - // .. .. .. ==> 0XF8000104[18:12] = 0x00000015U - // .. .. .. ==> MASK : 0x0007F000U VAL : 0x00015000U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x0007F000U ,0x00015000U), - // .. .. .. FINISH: UPDATE FB_DIV - // .. .. .. START: BY PASS PLL - // .. .. .. PLL_BYPASS_FORCE = 1 - // .. .. .. ==> 0XF8000104[4:4] = 0x00000001U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x00000010U ,0x00000010U), - // .. .. .. FINISH: BY PASS PLL - // .. .. .. START: ASSERT RESET - // .. .. .. PLL_RESET = 1 - // .. .. .. ==> 0XF8000104[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x00000001U ,0x00000001U), - // .. .. .. FINISH: ASSERT RESET - // .. .. .. START: DEASSERT RESET - // .. .. .. PLL_RESET = 0 - // .. .. .. ==> 0XF8000104[0:0] = 0x00000000U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x00000001U ,0x00000000U), - // .. .. .. FINISH: DEASSERT RESET - // .. .. .. START: CHECK PLL STATUS - // .. .. .. DDR_PLL_LOCK = 1 - // .. .. .. ==> 0XF800010C[1:1] = 0x00000001U - // .. .. .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. .. .. - EMIT_MASKPOLL(0XF800010C, 0x00000002U), - // .. .. .. FINISH: CHECK PLL STATUS - // .. .. .. START: REMOVE PLL BY PASS - // .. .. .. PLL_BYPASS_FORCE = 0 - // .. .. .. ==> 0XF8000104[4:4] = 0x00000000U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x00000010U ,0x00000000U), - // .. .. .. FINISH: REMOVE PLL BY PASS - // .. .. .. DDR_3XCLKACT = 0x1 - // .. .. .. ==> 0XF8000124[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. DDR_2XCLKACT = 0x1 - // .. .. .. ==> 0XF8000124[1:1] = 0x00000001U - // .. .. .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. .. .. DDR_3XCLK_DIVISOR = 0x2 - // .. .. .. ==> 0XF8000124[25:20] = 0x00000002U - // .. .. .. ==> MASK : 0x03F00000U VAL : 0x00200000U - // .. .. .. DDR_2XCLK_DIVISOR = 0x3 - // .. .. .. ==> 0XF8000124[31:26] = 0x00000003U - // .. .. .. ==> MASK : 0xFC000000U VAL : 0x0C000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000124, 0xFFF00003U ,0x0C200003U), - // .. .. FINISH: DDR PLL INIT - // .. .. START: IO PLL INIT - // .. .. PLL_RES = 0xc - // .. .. ==> 0XF8000118[7:4] = 0x0000000CU - // .. .. ==> MASK : 0x000000F0U VAL : 0x000000C0U - // .. .. PLL_CP = 0x2 - // .. .. ==> 0XF8000118[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. LOCK_CNT = 0x1f4 - // .. .. ==> 0XF8000118[21:12] = 0x000001F4U - // .. .. ==> MASK : 0x003FF000U VAL : 0x001F4000U - // .. .. - EMIT_MASKWRITE(0XF8000118, 0x003FFFF0U ,0x001F42C0U), - // .. .. .. START: UPDATE FB_DIV - // .. .. .. PLL_FDIV = 0x14 - // .. .. .. ==> 0XF8000108[18:12] = 0x00000014U - // .. .. .. ==> MASK : 0x0007F000U VAL : 0x00014000U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x0007F000U ,0x00014000U), - // .. .. .. FINISH: UPDATE FB_DIV - // .. .. .. START: BY PASS PLL - // .. .. .. PLL_BYPASS_FORCE = 1 - // .. .. .. ==> 0XF8000108[4:4] = 0x00000001U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x00000010U ,0x00000010U), - // .. .. .. FINISH: BY PASS PLL - // .. .. .. START: ASSERT RESET - // .. .. .. PLL_RESET = 1 - // .. .. .. ==> 0XF8000108[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x00000001U ,0x00000001U), - // .. .. .. FINISH: ASSERT RESET - // .. .. .. START: DEASSERT RESET - // .. .. .. PLL_RESET = 0 - // .. .. .. ==> 0XF8000108[0:0] = 0x00000000U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x00000001U ,0x00000000U), - // .. .. .. FINISH: DEASSERT RESET - // .. .. .. START: CHECK PLL STATUS - // .. .. .. IO_PLL_LOCK = 1 - // .. .. .. ==> 0XF800010C[2:2] = 0x00000001U - // .. .. .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. .. .. - EMIT_MASKPOLL(0XF800010C, 0x00000004U), - // .. .. .. FINISH: CHECK PLL STATUS - // .. .. .. START: REMOVE PLL BY PASS - // .. .. .. PLL_BYPASS_FORCE = 0 - // .. .. .. ==> 0XF8000108[4:4] = 0x00000000U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x00000010U ,0x00000000U), - // .. .. .. FINISH: REMOVE PLL BY PASS - // .. .. FINISH: IO PLL INIT - // .. FINISH: PLL SLCR REGISTERS - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_clock_init_data_2_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: CLOCK CONTROL SLCR REGISTERS - // .. CLKACT = 0x1 - // .. ==> 0XF8000128[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. DIVISOR0 = 0x34 - // .. ==> 0XF8000128[13:8] = 0x00000034U - // .. ==> MASK : 0x00003F00U VAL : 0x00003400U - // .. DIVISOR1 = 0x2 - // .. ==> 0XF8000128[25:20] = 0x00000002U - // .. ==> MASK : 0x03F00000U VAL : 0x00200000U - // .. - EMIT_MASKWRITE(0XF8000128, 0x03F03F01U ,0x00203401U), - // .. CLKACT = 0x1 - // .. ==> 0XF8000138[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. SRCSEL = 0x0 - // .. ==> 0XF8000138[4:4] = 0x00000000U - // .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000138, 0x00000011U ,0x00000001U), - // .. CLKACT = 0x1 - // .. ==> 0XF8000140[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. SRCSEL = 0x0 - // .. ==> 0XF8000140[6:4] = 0x00000000U - // .. ==> MASK : 0x00000070U VAL : 0x00000000U - // .. DIVISOR = 0x8 - // .. ==> 0XF8000140[13:8] = 0x00000008U - // .. ==> MASK : 0x00003F00U VAL : 0x00000800U - // .. DIVISOR1 = 0x1 - // .. ==> 0XF8000140[25:20] = 0x00000001U - // .. ==> MASK : 0x03F00000U VAL : 0x00100000U - // .. - EMIT_MASKWRITE(0XF8000140, 0x03F03F71U ,0x00100801U), - // .. CLKACT = 0x1 - // .. ==> 0XF800014C[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. SRCSEL = 0x0 - // .. ==> 0XF800014C[5:4] = 0x00000000U - // .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. DIVISOR = 0x5 - // .. ==> 0XF800014C[13:8] = 0x00000005U - // .. ==> MASK : 0x00003F00U VAL : 0x00000500U - // .. - EMIT_MASKWRITE(0XF800014C, 0x00003F31U ,0x00000501U), - // .. CLKACT0 = 0x1 - // .. ==> 0XF8000150[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. CLKACT1 = 0x0 - // .. ==> 0XF8000150[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. SRCSEL = 0x0 - // .. ==> 0XF8000150[5:4] = 0x00000000U - // .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. DIVISOR = 0x14 - // .. ==> 0XF8000150[13:8] = 0x00000014U - // .. ==> MASK : 0x00003F00U VAL : 0x00001400U - // .. - EMIT_MASKWRITE(0XF8000150, 0x00003F33U ,0x00001401U), - // .. CLKACT0 = 0x1 - // .. ==> 0XF8000154[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. CLKACT1 = 0x1 - // .. ==> 0XF8000154[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. SRCSEL = 0x0 - // .. ==> 0XF8000154[5:4] = 0x00000000U - // .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. DIVISOR = 0xa - // .. ==> 0XF8000154[13:8] = 0x0000000AU - // .. ==> MASK : 0x00003F00U VAL : 0x00000A00U - // .. - EMIT_MASKWRITE(0XF8000154, 0x00003F33U ,0x00000A03U), - // .. .. START: TRACE CLOCK - // .. .. FINISH: TRACE CLOCK - // .. .. CLKACT = 0x1 - // .. .. ==> 0XF8000168[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. SRCSEL = 0x0 - // .. .. ==> 0XF8000168[5:4] = 0x00000000U - // .. .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. .. DIVISOR = 0x5 - // .. .. ==> 0XF8000168[13:8] = 0x00000005U - // .. .. ==> MASK : 0x00003F00U VAL : 0x00000500U - // .. .. - EMIT_MASKWRITE(0XF8000168, 0x00003F31U ,0x00000501U), - // .. .. SRCSEL = 0x0 - // .. .. ==> 0XF8000170[5:4] = 0x00000000U - // .. .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. .. DIVISOR0 = 0x5 - // .. .. ==> 0XF8000170[13:8] = 0x00000005U - // .. .. ==> MASK : 0x00003F00U VAL : 0x00000500U - // .. .. DIVISOR1 = 0x2 - // .. .. ==> 0XF8000170[25:20] = 0x00000002U - // .. .. ==> MASK : 0x03F00000U VAL : 0x00200000U - // .. .. - EMIT_MASKWRITE(0XF8000170, 0x03F03F30U ,0x00200500U), - // .. .. CLK_621_TRUE = 0x1 - // .. .. ==> 0XF80001C4[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. - EMIT_MASKWRITE(0XF80001C4, 0x00000001U ,0x00000001U), - // .. .. DMA_CPU_2XCLKACT = 0x1 - // .. .. ==> 0XF800012C[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. USB0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[2:2] = 0x00000001U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. .. USB1_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[3:3] = 0x00000001U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000008U - // .. .. GEM0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[6:6] = 0x00000001U - // .. .. ==> MASK : 0x00000040U VAL : 0x00000040U - // .. .. GEM1_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[7:7] = 0x00000000U - // .. .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. .. SDI0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[10:10] = 0x00000001U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000400U - // .. .. SDI1_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. SPI0_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[14:14] = 0x00000000U - // .. .. ==> MASK : 0x00004000U VAL : 0x00000000U - // .. .. SPI1_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[15:15] = 0x00000000U - // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U - // .. .. CAN0_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. CAN1_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. I2C0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[18:18] = 0x00000001U - // .. .. ==> MASK : 0x00040000U VAL : 0x00040000U - // .. .. I2C1_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[19:19] = 0x00000001U - // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. .. UART0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[20:20] = 0x00000001U - // .. .. ==> MASK : 0x00100000U VAL : 0x00100000U - // .. .. UART1_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[21:21] = 0x00000001U - // .. .. ==> MASK : 0x00200000U VAL : 0x00200000U - // .. .. GPIO_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[22:22] = 0x00000001U - // .. .. ==> MASK : 0x00400000U VAL : 0x00400000U - // .. .. LQSPI_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[23:23] = 0x00000001U - // .. .. ==> MASK : 0x00800000U VAL : 0x00800000U - // .. .. SMC_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[24:24] = 0x00000001U - // .. .. ==> MASK : 0x01000000U VAL : 0x01000000U - // .. .. - EMIT_MASKWRITE(0XF800012C, 0x01FFCCCDU ,0x01FC044DU), - // .. FINISH: CLOCK CONTROL SLCR REGISTERS - // .. START: THIS SHOULD BE BLANK - // .. FINISH: THIS SHOULD BE BLANK - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_ddr_init_data_2_0[] = { - // START: top - // .. START: DDR INITIALIZATION - // .. .. START: LOCK DDR - // .. .. reg_ddrc_soft_rstb = 0 - // .. .. ==> 0XF8006000[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_powerdown_en = 0x0 - // .. .. ==> 0XF8006000[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_ddrc_data_bus_width = 0x0 - // .. .. ==> 0XF8006000[3:2] = 0x00000000U - // .. .. ==> MASK : 0x0000000CU VAL : 0x00000000U - // .. .. reg_ddrc_burst8_refresh = 0x0 - // .. .. ==> 0XF8006000[6:4] = 0x00000000U - // .. .. ==> MASK : 0x00000070U VAL : 0x00000000U - // .. .. reg_ddrc_rdwr_idle_gap = 0x1 - // .. .. ==> 0XF8006000[13:7] = 0x00000001U - // .. .. ==> MASK : 0x00003F80U VAL : 0x00000080U - // .. .. reg_ddrc_dis_rd_bypass = 0x0 - // .. .. ==> 0XF8006000[14:14] = 0x00000000U - // .. .. ==> MASK : 0x00004000U VAL : 0x00000000U - // .. .. reg_ddrc_dis_act_bypass = 0x0 - // .. .. ==> 0XF8006000[15:15] = 0x00000000U - // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U - // .. .. reg_ddrc_dis_auto_refresh = 0x0 - // .. .. ==> 0XF8006000[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006000, 0x0001FFFFU ,0x00000080U), - // .. .. FINISH: LOCK DDR - // .. .. reg_ddrc_t_rfc_nom_x32 = 0x7f - // .. .. ==> 0XF8006004[11:0] = 0x0000007FU - // .. .. ==> MASK : 0x00000FFFU VAL : 0x0000007FU - // .. .. reg_ddrc_active_ranks = 0x1 - // .. .. ==> 0XF8006004[13:12] = 0x00000001U - // .. .. ==> MASK : 0x00003000U VAL : 0x00001000U - // .. .. reg_ddrc_addrmap_cs_bit0 = 0x0 - // .. .. ==> 0XF8006004[18:14] = 0x00000000U - // .. .. ==> MASK : 0x0007C000U VAL : 0x00000000U - // .. .. reg_ddrc_wr_odt_block = 0x1 - // .. .. ==> 0XF8006004[20:19] = 0x00000001U - // .. .. ==> MASK : 0x00180000U VAL : 0x00080000U - // .. .. reg_ddrc_diff_rank_rd_2cycle_gap = 0x0 - // .. .. ==> 0XF8006004[21:21] = 0x00000000U - // .. .. ==> MASK : 0x00200000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_cs_bit1 = 0x0 - // .. .. ==> 0XF8006004[26:22] = 0x00000000U - // .. .. ==> MASK : 0x07C00000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_open_bank = 0x0 - // .. .. ==> 0XF8006004[27:27] = 0x00000000U - // .. .. ==> MASK : 0x08000000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_4bank_ram = 0x0 - // .. .. ==> 0XF8006004[28:28] = 0x00000000U - // .. .. ==> MASK : 0x10000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006004, 0x1FFFFFFFU ,0x0008107FU), - // .. .. reg_ddrc_hpr_min_non_critical_x32 = 0xf - // .. .. ==> 0XF8006008[10:0] = 0x0000000FU - // .. .. ==> MASK : 0x000007FFU VAL : 0x0000000FU - // .. .. reg_ddrc_hpr_max_starve_x32 = 0xf - // .. .. ==> 0XF8006008[21:11] = 0x0000000FU - // .. .. ==> MASK : 0x003FF800U VAL : 0x00007800U - // .. .. reg_ddrc_hpr_xact_run_length = 0xf - // .. .. ==> 0XF8006008[25:22] = 0x0000000FU - // .. .. ==> MASK : 0x03C00000U VAL : 0x03C00000U - // .. .. - EMIT_MASKWRITE(0XF8006008, 0x03FFFFFFU ,0x03C0780FU), - // .. .. reg_ddrc_lpr_min_non_critical_x32 = 0x1 - // .. .. ==> 0XF800600C[10:0] = 0x00000001U - // .. .. ==> MASK : 0x000007FFU VAL : 0x00000001U - // .. .. reg_ddrc_lpr_max_starve_x32 = 0x2 - // .. .. ==> 0XF800600C[21:11] = 0x00000002U - // .. .. ==> MASK : 0x003FF800U VAL : 0x00001000U - // .. .. reg_ddrc_lpr_xact_run_length = 0x8 - // .. .. ==> 0XF800600C[25:22] = 0x00000008U - // .. .. ==> MASK : 0x03C00000U VAL : 0x02000000U - // .. .. - EMIT_MASKWRITE(0XF800600C, 0x03FFFFFFU ,0x02001001U), - // .. .. reg_ddrc_w_min_non_critical_x32 = 0x1 - // .. .. ==> 0XF8006010[10:0] = 0x00000001U - // .. .. ==> MASK : 0x000007FFU VAL : 0x00000001U - // .. .. reg_ddrc_w_xact_run_length = 0x8 - // .. .. ==> 0XF8006010[14:11] = 0x00000008U - // .. .. ==> MASK : 0x00007800U VAL : 0x00004000U - // .. .. reg_ddrc_w_max_starve_x32 = 0x2 - // .. .. ==> 0XF8006010[25:15] = 0x00000002U - // .. .. ==> MASK : 0x03FF8000U VAL : 0x00010000U - // .. .. - EMIT_MASKWRITE(0XF8006010, 0x03FFFFFFU ,0x00014001U), - // .. .. reg_ddrc_t_rc = 0x1a - // .. .. ==> 0XF8006014[5:0] = 0x0000001AU - // .. .. ==> MASK : 0x0000003FU VAL : 0x0000001AU - // .. .. reg_ddrc_t_rfc_min = 0x54 - // .. .. ==> 0XF8006014[13:6] = 0x00000054U - // .. .. ==> MASK : 0x00003FC0U VAL : 0x00001500U - // .. .. reg_ddrc_post_selfref_gap_x32 = 0x10 - // .. .. ==> 0XF8006014[20:14] = 0x00000010U - // .. .. ==> MASK : 0x001FC000U VAL : 0x00040000U - // .. .. - EMIT_MASKWRITE(0XF8006014, 0x001FFFFFU ,0x0004151AU), - // .. .. reg_ddrc_wr2pre = 0x12 - // .. .. ==> 0XF8006018[4:0] = 0x00000012U - // .. .. ==> MASK : 0x0000001FU VAL : 0x00000012U - // .. .. reg_ddrc_powerdown_to_x32 = 0x6 - // .. .. ==> 0XF8006018[9:5] = 0x00000006U - // .. .. ==> MASK : 0x000003E0U VAL : 0x000000C0U - // .. .. reg_ddrc_t_faw = 0x15 - // .. .. ==> 0XF8006018[15:10] = 0x00000015U - // .. .. ==> MASK : 0x0000FC00U VAL : 0x00005400U - // .. .. reg_ddrc_t_ras_max = 0x23 - // .. .. ==> 0XF8006018[21:16] = 0x00000023U - // .. .. ==> MASK : 0x003F0000U VAL : 0x00230000U - // .. .. reg_ddrc_t_ras_min = 0x13 - // .. .. ==> 0XF8006018[26:22] = 0x00000013U - // .. .. ==> MASK : 0x07C00000U VAL : 0x04C00000U - // .. .. reg_ddrc_t_cke = 0x4 - // .. .. ==> 0XF8006018[31:28] = 0x00000004U - // .. .. ==> MASK : 0xF0000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF8006018, 0xF7FFFFFFU ,0x44E354D2U), - // .. .. reg_ddrc_write_latency = 0x5 - // .. .. ==> 0XF800601C[4:0] = 0x00000005U - // .. .. ==> MASK : 0x0000001FU VAL : 0x00000005U - // .. .. reg_ddrc_rd2wr = 0x7 - // .. .. ==> 0XF800601C[9:5] = 0x00000007U - // .. .. ==> MASK : 0x000003E0U VAL : 0x000000E0U - // .. .. reg_ddrc_wr2rd = 0xe - // .. .. ==> 0XF800601C[14:10] = 0x0000000EU - // .. .. ==> MASK : 0x00007C00U VAL : 0x00003800U - // .. .. reg_ddrc_t_xp = 0x4 - // .. .. ==> 0XF800601C[19:15] = 0x00000004U - // .. .. ==> MASK : 0x000F8000U VAL : 0x00020000U - // .. .. reg_ddrc_pad_pd = 0x0 - // .. .. ==> 0XF800601C[22:20] = 0x00000000U - // .. .. ==> MASK : 0x00700000U VAL : 0x00000000U - // .. .. reg_ddrc_rd2pre = 0x4 - // .. .. ==> 0XF800601C[27:23] = 0x00000004U - // .. .. ==> MASK : 0x0F800000U VAL : 0x02000000U - // .. .. reg_ddrc_t_rcd = 0x7 - // .. .. ==> 0XF800601C[31:28] = 0x00000007U - // .. .. ==> MASK : 0xF0000000U VAL : 0x70000000U - // .. .. - EMIT_MASKWRITE(0XF800601C, 0xFFFFFFFFU ,0x720238E5U), - // .. .. reg_ddrc_t_ccd = 0x4 - // .. .. ==> 0XF8006020[4:2] = 0x00000004U - // .. .. ==> MASK : 0x0000001CU VAL : 0x00000010U - // .. .. reg_ddrc_t_rrd = 0x6 - // .. .. ==> 0XF8006020[7:5] = 0x00000006U - // .. .. ==> MASK : 0x000000E0U VAL : 0x000000C0U - // .. .. reg_ddrc_refresh_margin = 0x2 - // .. .. ==> 0XF8006020[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. reg_ddrc_t_rp = 0x7 - // .. .. ==> 0XF8006020[15:12] = 0x00000007U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00007000U - // .. .. reg_ddrc_refresh_to_x32 = 0x8 - // .. .. ==> 0XF8006020[20:16] = 0x00000008U - // .. .. ==> MASK : 0x001F0000U VAL : 0x00080000U - // .. .. reg_ddrc_sdram = 0x1 - // .. .. ==> 0XF8006020[21:21] = 0x00000001U - // .. .. ==> MASK : 0x00200000U VAL : 0x00200000U - // .. .. reg_ddrc_mobile = 0x0 - // .. .. ==> 0XF8006020[22:22] = 0x00000000U - // .. .. ==> MASK : 0x00400000U VAL : 0x00000000U - // .. .. reg_ddrc_clock_stop_en = 0x0 - // .. .. ==> 0XF8006020[23:23] = 0x00000000U - // .. .. ==> MASK : 0x00800000U VAL : 0x00000000U - // .. .. reg_ddrc_read_latency = 0x7 - // .. .. ==> 0XF8006020[28:24] = 0x00000007U - // .. .. ==> MASK : 0x1F000000U VAL : 0x07000000U - // .. .. reg_phy_mode_ddr1_ddr2 = 0x1 - // .. .. ==> 0XF8006020[29:29] = 0x00000001U - // .. .. ==> MASK : 0x20000000U VAL : 0x20000000U - // .. .. reg_ddrc_dis_pad_pd = 0x0 - // .. .. ==> 0XF8006020[30:30] = 0x00000000U - // .. .. ==> MASK : 0x40000000U VAL : 0x00000000U - // .. .. reg_ddrc_loopback = 0x0 - // .. .. ==> 0XF8006020[31:31] = 0x00000000U - // .. .. ==> MASK : 0x80000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006020, 0xFFFFFFFCU ,0x272872D0U), - // .. .. reg_ddrc_en_2t_timing_mode = 0x0 - // .. .. ==> 0XF8006024[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_prefer_write = 0x0 - // .. .. ==> 0XF8006024[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_ddrc_max_rank_rd = 0xf - // .. .. ==> 0XF8006024[5:2] = 0x0000000FU - // .. .. ==> MASK : 0x0000003CU VAL : 0x0000003CU - // .. .. reg_ddrc_mr_wr = 0x0 - // .. .. ==> 0XF8006024[6:6] = 0x00000000U - // .. .. ==> MASK : 0x00000040U VAL : 0x00000000U - // .. .. reg_ddrc_mr_addr = 0x0 - // .. .. ==> 0XF8006024[8:7] = 0x00000000U - // .. .. ==> MASK : 0x00000180U VAL : 0x00000000U - // .. .. reg_ddrc_mr_data = 0x0 - // .. .. ==> 0XF8006024[24:9] = 0x00000000U - // .. .. ==> MASK : 0x01FFFE00U VAL : 0x00000000U - // .. .. ddrc_reg_mr_wr_busy = 0x0 - // .. .. ==> 0XF8006024[25:25] = 0x00000000U - // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U - // .. .. reg_ddrc_mr_type = 0x0 - // .. .. ==> 0XF8006024[26:26] = 0x00000000U - // .. .. ==> MASK : 0x04000000U VAL : 0x00000000U - // .. .. reg_ddrc_mr_rdata_valid = 0x0 - // .. .. ==> 0XF8006024[27:27] = 0x00000000U - // .. .. ==> MASK : 0x08000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006024, 0x0FFFFFFFU ,0x0000003CU), - // .. .. reg_ddrc_final_wait_x32 = 0x7 - // .. .. ==> 0XF8006028[6:0] = 0x00000007U - // .. .. ==> MASK : 0x0000007FU VAL : 0x00000007U - // .. .. reg_ddrc_pre_ocd_x32 = 0x0 - // .. .. ==> 0XF8006028[10:7] = 0x00000000U - // .. .. ==> MASK : 0x00000780U VAL : 0x00000000U - // .. .. reg_ddrc_t_mrd = 0x4 - // .. .. ==> 0XF8006028[13:11] = 0x00000004U - // .. .. ==> MASK : 0x00003800U VAL : 0x00002000U - // .. .. - EMIT_MASKWRITE(0XF8006028, 0x00003FFFU ,0x00002007U), - // .. .. reg_ddrc_emr2 = 0x8 - // .. .. ==> 0XF800602C[15:0] = 0x00000008U - // .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000008U - // .. .. reg_ddrc_emr3 = 0x0 - // .. .. ==> 0XF800602C[31:16] = 0x00000000U - // .. .. ==> MASK : 0xFFFF0000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800602C, 0xFFFFFFFFU ,0x00000008U), - // .. .. reg_ddrc_mr = 0x930 - // .. .. ==> 0XF8006030[15:0] = 0x00000930U - // .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000930U - // .. .. reg_ddrc_emr = 0x4 - // .. .. ==> 0XF8006030[31:16] = 0x00000004U - // .. .. ==> MASK : 0xFFFF0000U VAL : 0x00040000U - // .. .. - EMIT_MASKWRITE(0XF8006030, 0xFFFFFFFFU ,0x00040930U), - // .. .. reg_ddrc_burst_rdwr = 0x4 - // .. .. ==> 0XF8006034[3:0] = 0x00000004U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000004U - // .. .. reg_ddrc_pre_cke_x1024 = 0x167 - // .. .. ==> 0XF8006034[13:4] = 0x00000167U - // .. .. ==> MASK : 0x00003FF0U VAL : 0x00001670U - // .. .. reg_ddrc_post_cke_x1024 = 0x1 - // .. .. ==> 0XF8006034[25:16] = 0x00000001U - // .. .. ==> MASK : 0x03FF0000U VAL : 0x00010000U - // .. .. reg_ddrc_burstchop = 0x0 - // .. .. ==> 0XF8006034[28:28] = 0x00000000U - // .. .. ==> MASK : 0x10000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006034, 0x13FF3FFFU ,0x00011674U), - // .. .. reg_ddrc_force_low_pri_n = 0x0 - // .. .. ==> 0XF8006038[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_dis_dq = 0x0 - // .. .. ==> 0XF8006038[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_debug_mode = 0x0 - // .. .. ==> 0XF8006038[6:6] = 0x00000000U - // .. .. ==> MASK : 0x00000040U VAL : 0x00000000U - // .. .. reg_phy_wr_level_start = 0x0 - // .. .. ==> 0XF8006038[7:7] = 0x00000000U - // .. .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. .. reg_phy_rd_level_start = 0x0 - // .. .. ==> 0XF8006038[8:8] = 0x00000000U - // .. .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. .. reg_phy_dq0_wait_t = 0x0 - // .. .. ==> 0XF8006038[12:9] = 0x00000000U - // .. .. ==> MASK : 0x00001E00U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006038, 0x00001FC3U ,0x00000000U), - // .. .. reg_ddrc_addrmap_bank_b0 = 0x7 - // .. .. ==> 0XF800603C[3:0] = 0x00000007U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000007U - // .. .. reg_ddrc_addrmap_bank_b1 = 0x7 - // .. .. ==> 0XF800603C[7:4] = 0x00000007U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000070U - // .. .. reg_ddrc_addrmap_bank_b2 = 0x7 - // .. .. ==> 0XF800603C[11:8] = 0x00000007U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000700U - // .. .. reg_ddrc_addrmap_col_b5 = 0x0 - // .. .. ==> 0XF800603C[15:12] = 0x00000000U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b6 = 0x0 - // .. .. ==> 0XF800603C[19:16] = 0x00000000U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800603C, 0x000FFFFFU ,0x00000777U), - // .. .. reg_ddrc_addrmap_col_b2 = 0x0 - // .. .. ==> 0XF8006040[3:0] = 0x00000000U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b3 = 0x0 - // .. .. ==> 0XF8006040[7:4] = 0x00000000U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b4 = 0x0 - // .. .. ==> 0XF8006040[11:8] = 0x00000000U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b7 = 0x0 - // .. .. ==> 0XF8006040[15:12] = 0x00000000U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b8 = 0x0 - // .. .. ==> 0XF8006040[19:16] = 0x00000000U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b9 = 0xf - // .. .. ==> 0XF8006040[23:20] = 0x0000000FU - // .. .. ==> MASK : 0x00F00000U VAL : 0x00F00000U - // .. .. reg_ddrc_addrmap_col_b10 = 0xf - // .. .. ==> 0XF8006040[27:24] = 0x0000000FU - // .. .. ==> MASK : 0x0F000000U VAL : 0x0F000000U - // .. .. reg_ddrc_addrmap_col_b11 = 0xf - // .. .. ==> 0XF8006040[31:28] = 0x0000000FU - // .. .. ==> MASK : 0xF0000000U VAL : 0xF0000000U - // .. .. - EMIT_MASKWRITE(0XF8006040, 0xFFFFFFFFU ,0xFFF00000U), - // .. .. reg_ddrc_addrmap_row_b0 = 0x6 - // .. .. ==> 0XF8006044[3:0] = 0x00000006U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000006U - // .. .. reg_ddrc_addrmap_row_b1 = 0x6 - // .. .. ==> 0XF8006044[7:4] = 0x00000006U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000060U - // .. .. reg_ddrc_addrmap_row_b2_11 = 0x6 - // .. .. ==> 0XF8006044[11:8] = 0x00000006U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000600U - // .. .. reg_ddrc_addrmap_row_b12 = 0x6 - // .. .. ==> 0XF8006044[15:12] = 0x00000006U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00006000U - // .. .. reg_ddrc_addrmap_row_b13 = 0x6 - // .. .. ==> 0XF8006044[19:16] = 0x00000006U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00060000U - // .. .. reg_ddrc_addrmap_row_b14 = 0xf - // .. .. ==> 0XF8006044[23:20] = 0x0000000FU - // .. .. ==> MASK : 0x00F00000U VAL : 0x00F00000U - // .. .. reg_ddrc_addrmap_row_b15 = 0xf - // .. .. ==> 0XF8006044[27:24] = 0x0000000FU - // .. .. ==> MASK : 0x0F000000U VAL : 0x0F000000U - // .. .. - EMIT_MASKWRITE(0XF8006044, 0x0FFFFFFFU ,0x0FF66666U), - // .. .. reg_ddrc_rank0_rd_odt = 0x0 - // .. .. ==> 0XF8006048[2:0] = 0x00000000U - // .. .. ==> MASK : 0x00000007U VAL : 0x00000000U - // .. .. reg_ddrc_rank0_wr_odt = 0x1 - // .. .. ==> 0XF8006048[5:3] = 0x00000001U - // .. .. ==> MASK : 0x00000038U VAL : 0x00000008U - // .. .. reg_ddrc_rank1_rd_odt = 0x1 - // .. .. ==> 0XF8006048[8:6] = 0x00000001U - // .. .. ==> MASK : 0x000001C0U VAL : 0x00000040U - // .. .. reg_ddrc_rank1_wr_odt = 0x1 - // .. .. ==> 0XF8006048[11:9] = 0x00000001U - // .. .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. .. reg_phy_rd_local_odt = 0x0 - // .. .. ==> 0XF8006048[13:12] = 0x00000000U - // .. .. ==> MASK : 0x00003000U VAL : 0x00000000U - // .. .. reg_phy_wr_local_odt = 0x3 - // .. .. ==> 0XF8006048[15:14] = 0x00000003U - // .. .. ==> MASK : 0x0000C000U VAL : 0x0000C000U - // .. .. reg_phy_idle_local_odt = 0x3 - // .. .. ==> 0XF8006048[17:16] = 0x00000003U - // .. .. ==> MASK : 0x00030000U VAL : 0x00030000U - // .. .. reg_ddrc_rank2_rd_odt = 0x0 - // .. .. ==> 0XF8006048[20:18] = 0x00000000U - // .. .. ==> MASK : 0x001C0000U VAL : 0x00000000U - // .. .. reg_ddrc_rank2_wr_odt = 0x0 - // .. .. ==> 0XF8006048[23:21] = 0x00000000U - // .. .. ==> MASK : 0x00E00000U VAL : 0x00000000U - // .. .. reg_ddrc_rank3_rd_odt = 0x0 - // .. .. ==> 0XF8006048[26:24] = 0x00000000U - // .. .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. .. reg_ddrc_rank3_wr_odt = 0x0 - // .. .. ==> 0XF8006048[29:27] = 0x00000000U - // .. .. ==> MASK : 0x38000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006048, 0x3FFFFFFFU ,0x0003C248U), - // .. .. reg_phy_rd_cmd_to_data = 0x0 - // .. .. ==> 0XF8006050[3:0] = 0x00000000U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U - // .. .. reg_phy_wr_cmd_to_data = 0x0 - // .. .. ==> 0XF8006050[7:4] = 0x00000000U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. .. reg_phy_rdc_we_to_re_delay = 0x8 - // .. .. ==> 0XF8006050[11:8] = 0x00000008U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000800U - // .. .. reg_phy_rdc_fifo_rst_disable = 0x0 - // .. .. ==> 0XF8006050[15:15] = 0x00000000U - // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U - // .. .. reg_phy_use_fixed_re = 0x1 - // .. .. ==> 0XF8006050[16:16] = 0x00000001U - // .. .. ==> MASK : 0x00010000U VAL : 0x00010000U - // .. .. reg_phy_rdc_fifo_rst_err_cnt_clr = 0x0 - // .. .. ==> 0XF8006050[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_phy_dis_phy_ctrl_rstn = 0x0 - // .. .. ==> 0XF8006050[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_phy_clk_stall_level = 0x0 - // .. .. ==> 0XF8006050[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_num_of_dq0 = 0x7 - // .. .. ==> 0XF8006050[27:24] = 0x00000007U - // .. .. ==> MASK : 0x0F000000U VAL : 0x07000000U - // .. .. reg_phy_wrlvl_num_of_dq0 = 0x7 - // .. .. ==> 0XF8006050[31:28] = 0x00000007U - // .. .. ==> MASK : 0xF0000000U VAL : 0x70000000U - // .. .. - EMIT_MASKWRITE(0XF8006050, 0xFF0F8FFFU ,0x77010800U), - // .. .. reg_ddrc_dll_calib_to_min_x1024 = 0x1 - // .. .. ==> 0XF8006058[7:0] = 0x00000001U - // .. .. ==> MASK : 0x000000FFU VAL : 0x00000001U - // .. .. reg_ddrc_dll_calib_to_max_x1024 = 0x1 - // .. .. ==> 0XF8006058[15:8] = 0x00000001U - // .. .. ==> MASK : 0x0000FF00U VAL : 0x00000100U - // .. .. reg_ddrc_dis_dll_calib = 0x0 - // .. .. ==> 0XF8006058[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006058, 0x0001FFFFU ,0x00000101U), - // .. .. reg_ddrc_rd_odt_delay = 0x3 - // .. .. ==> 0XF800605C[3:0] = 0x00000003U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000003U - // .. .. reg_ddrc_wr_odt_delay = 0x0 - // .. .. ==> 0XF800605C[7:4] = 0x00000000U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. .. reg_ddrc_rd_odt_hold = 0x0 - // .. .. ==> 0XF800605C[11:8] = 0x00000000U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000000U - // .. .. reg_ddrc_wr_odt_hold = 0x5 - // .. .. ==> 0XF800605C[15:12] = 0x00000005U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00005000U - // .. .. - EMIT_MASKWRITE(0XF800605C, 0x0000FFFFU ,0x00005003U), - // .. .. reg_ddrc_pageclose = 0x0 - // .. .. ==> 0XF8006060[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_lpr_num_entries = 0x1f - // .. .. ==> 0XF8006060[6:1] = 0x0000001FU - // .. .. ==> MASK : 0x0000007EU VAL : 0x0000003EU - // .. .. reg_ddrc_auto_pre_en = 0x0 - // .. .. ==> 0XF8006060[7:7] = 0x00000000U - // .. .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. .. reg_ddrc_refresh_update_level = 0x0 - // .. .. ==> 0XF8006060[8:8] = 0x00000000U - // .. .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. .. reg_ddrc_dis_wc = 0x0 - // .. .. ==> 0XF8006060[9:9] = 0x00000000U - // .. .. ==> MASK : 0x00000200U VAL : 0x00000000U - // .. .. reg_ddrc_dis_collision_page_opt = 0x0 - // .. .. ==> 0XF8006060[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_ddrc_selfref_en = 0x0 - // .. .. ==> 0XF8006060[12:12] = 0x00000000U - // .. .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006060, 0x000017FFU ,0x0000003EU), - // .. .. reg_ddrc_go2critical_hysteresis = 0x0 - // .. .. ==> 0XF8006064[12:5] = 0x00000000U - // .. .. ==> MASK : 0x00001FE0U VAL : 0x00000000U - // .. .. reg_arb_go2critical_en = 0x1 - // .. .. ==> 0XF8006064[17:17] = 0x00000001U - // .. .. ==> MASK : 0x00020000U VAL : 0x00020000U - // .. .. - EMIT_MASKWRITE(0XF8006064, 0x00021FE0U ,0x00020000U), - // .. .. reg_ddrc_wrlvl_ww = 0x41 - // .. .. ==> 0XF8006068[7:0] = 0x00000041U - // .. .. ==> MASK : 0x000000FFU VAL : 0x00000041U - // .. .. reg_ddrc_rdlvl_rr = 0x41 - // .. .. ==> 0XF8006068[15:8] = 0x00000041U - // .. .. ==> MASK : 0x0000FF00U VAL : 0x00004100U - // .. .. reg_ddrc_dfi_t_wlmrd = 0x28 - // .. .. ==> 0XF8006068[25:16] = 0x00000028U - // .. .. ==> MASK : 0x03FF0000U VAL : 0x00280000U - // .. .. - EMIT_MASKWRITE(0XF8006068, 0x03FFFFFFU ,0x00284141U), - // .. .. dfi_t_ctrlupd_interval_min_x1024 = 0x10 - // .. .. ==> 0XF800606C[7:0] = 0x00000010U - // .. .. ==> MASK : 0x000000FFU VAL : 0x00000010U - // .. .. dfi_t_ctrlupd_interval_max_x1024 = 0x16 - // .. .. ==> 0XF800606C[15:8] = 0x00000016U - // .. .. ==> MASK : 0x0000FF00U VAL : 0x00001600U - // .. .. - EMIT_MASKWRITE(0XF800606C, 0x0000FFFFU ,0x00001610U), - // .. .. reg_ddrc_dfi_t_ctrl_delay = 0x1 - // .. .. ==> 0XF8006078[3:0] = 0x00000001U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000001U - // .. .. reg_ddrc_dfi_t_dram_clk_disable = 0x1 - // .. .. ==> 0XF8006078[7:4] = 0x00000001U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000010U - // .. .. reg_ddrc_dfi_t_dram_clk_enable = 0x1 - // .. .. ==> 0XF8006078[11:8] = 0x00000001U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000100U - // .. .. reg_ddrc_t_cksre = 0x6 - // .. .. ==> 0XF8006078[15:12] = 0x00000006U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00006000U - // .. .. reg_ddrc_t_cksrx = 0x6 - // .. .. ==> 0XF8006078[19:16] = 0x00000006U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00060000U - // .. .. reg_ddrc_t_ckesr = 0x4 - // .. .. ==> 0XF8006078[25:20] = 0x00000004U - // .. .. ==> MASK : 0x03F00000U VAL : 0x00400000U - // .. .. - EMIT_MASKWRITE(0XF8006078, 0x03FFFFFFU ,0x00466111U), - // .. .. reg_ddrc_t_ckpde = 0x2 - // .. .. ==> 0XF800607C[3:0] = 0x00000002U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000002U - // .. .. reg_ddrc_t_ckpdx = 0x2 - // .. .. ==> 0XF800607C[7:4] = 0x00000002U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000020U - // .. .. reg_ddrc_t_ckdpde = 0x2 - // .. .. ==> 0XF800607C[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. reg_ddrc_t_ckdpdx = 0x2 - // .. .. ==> 0XF800607C[15:12] = 0x00000002U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00002000U - // .. .. reg_ddrc_t_ckcsx = 0x3 - // .. .. ==> 0XF800607C[19:16] = 0x00000003U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00030000U - // .. .. - EMIT_MASKWRITE(0XF800607C, 0x000FFFFFU ,0x00032222U), - // .. .. refresh_timer0_start_value_x32 = 0x0 - // .. .. ==> 0XF80060A0[11:0] = 0x00000000U - // .. .. ==> MASK : 0x00000FFFU VAL : 0x00000000U - // .. .. refresh_timer1_start_value_x32 = 0x8 - // .. .. ==> 0XF80060A0[23:12] = 0x00000008U - // .. .. ==> MASK : 0x00FFF000U VAL : 0x00008000U - // .. .. - EMIT_MASKWRITE(0XF80060A0, 0x00FFFFFFU ,0x00008000U), - // .. .. reg_ddrc_dis_auto_zq = 0x0 - // .. .. ==> 0XF80060A4[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_ddr3 = 0x1 - // .. .. ==> 0XF80060A4[1:1] = 0x00000001U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. .. reg_ddrc_t_mod = 0x200 - // .. .. ==> 0XF80060A4[11:2] = 0x00000200U - // .. .. ==> MASK : 0x00000FFCU VAL : 0x00000800U - // .. .. reg_ddrc_t_zq_long_nop = 0x200 - // .. .. ==> 0XF80060A4[21:12] = 0x00000200U - // .. .. ==> MASK : 0x003FF000U VAL : 0x00200000U - // .. .. reg_ddrc_t_zq_short_nop = 0x40 - // .. .. ==> 0XF80060A4[31:22] = 0x00000040U - // .. .. ==> MASK : 0xFFC00000U VAL : 0x10000000U - // .. .. - EMIT_MASKWRITE(0XF80060A4, 0xFFFFFFFFU ,0x10200802U), - // .. .. t_zq_short_interval_x1024 = 0xc845 - // .. .. ==> 0XF80060A8[19:0] = 0x0000C845U - // .. .. ==> MASK : 0x000FFFFFU VAL : 0x0000C845U - // .. .. dram_rstn_x1024 = 0x67 - // .. .. ==> 0XF80060A8[27:20] = 0x00000067U - // .. .. ==> MASK : 0x0FF00000U VAL : 0x06700000U - // .. .. - EMIT_MASKWRITE(0XF80060A8, 0x0FFFFFFFU ,0x0670C845U), - // .. .. deeppowerdown_en = 0x0 - // .. .. ==> 0XF80060AC[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. deeppowerdown_to_x1024 = 0xff - // .. .. ==> 0XF80060AC[8:1] = 0x000000FFU - // .. .. ==> MASK : 0x000001FEU VAL : 0x000001FEU - // .. .. - EMIT_MASKWRITE(0XF80060AC, 0x000001FFU ,0x000001FEU), - // .. .. dfi_wrlvl_max_x1024 = 0xfff - // .. .. ==> 0XF80060B0[11:0] = 0x00000FFFU - // .. .. ==> MASK : 0x00000FFFU VAL : 0x00000FFFU - // .. .. dfi_rdlvl_max_x1024 = 0xfff - // .. .. ==> 0XF80060B0[23:12] = 0x00000FFFU - // .. .. ==> MASK : 0x00FFF000U VAL : 0x00FFF000U - // .. .. ddrc_reg_twrlvl_max_error = 0x0 - // .. .. ==> 0XF80060B0[24:24] = 0x00000000U - // .. .. ==> MASK : 0x01000000U VAL : 0x00000000U - // .. .. ddrc_reg_trdlvl_max_error = 0x0 - // .. .. ==> 0XF80060B0[25:25] = 0x00000000U - // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U - // .. .. reg_ddrc_dfi_wr_level_en = 0x1 - // .. .. ==> 0XF80060B0[26:26] = 0x00000001U - // .. .. ==> MASK : 0x04000000U VAL : 0x04000000U - // .. .. reg_ddrc_dfi_rd_dqs_gate_level = 0x1 - // .. .. ==> 0XF80060B0[27:27] = 0x00000001U - // .. .. ==> MASK : 0x08000000U VAL : 0x08000000U - // .. .. reg_ddrc_dfi_rd_data_eye_train = 0x1 - // .. .. ==> 0XF80060B0[28:28] = 0x00000001U - // .. .. ==> MASK : 0x10000000U VAL : 0x10000000U - // .. .. - EMIT_MASKWRITE(0XF80060B0, 0x1FFFFFFFU ,0x1CFFFFFFU), - // .. .. reg_ddrc_2t_delay = 0x0 - // .. .. ==> 0XF80060B4[8:0] = 0x00000000U - // .. .. ==> MASK : 0x000001FFU VAL : 0x00000000U - // .. .. reg_ddrc_skip_ocd = 0x1 - // .. .. ==> 0XF80060B4[9:9] = 0x00000001U - // .. .. ==> MASK : 0x00000200U VAL : 0x00000200U - // .. .. reg_ddrc_dis_pre_bypass = 0x0 - // .. .. ==> 0XF80060B4[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060B4, 0x000007FFU ,0x00000200U), - // .. .. reg_ddrc_dfi_t_rddata_en = 0x6 - // .. .. ==> 0XF80060B8[4:0] = 0x00000006U - // .. .. ==> MASK : 0x0000001FU VAL : 0x00000006U - // .. .. reg_ddrc_dfi_t_ctrlup_min = 0x3 - // .. .. ==> 0XF80060B8[14:5] = 0x00000003U - // .. .. ==> MASK : 0x00007FE0U VAL : 0x00000060U - // .. .. reg_ddrc_dfi_t_ctrlup_max = 0x40 - // .. .. ==> 0XF80060B8[24:15] = 0x00000040U - // .. .. ==> MASK : 0x01FF8000U VAL : 0x00200000U - // .. .. - EMIT_MASKWRITE(0XF80060B8, 0x01FFFFFFU ,0x00200066U), - // .. .. Clear_Uncorrectable_DRAM_ECC_error = 0x0 - // .. .. ==> 0XF80060C4[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. Clear_Correctable_DRAM_ECC_error = 0x0 - // .. .. ==> 0XF80060C4[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060C4, 0x00000003U ,0x00000000U), - // .. .. CORR_ECC_LOG_VALID = 0x0 - // .. .. ==> 0XF80060C8[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. ECC_CORRECTED_BIT_NUM = 0x0 - // .. .. ==> 0XF80060C8[7:1] = 0x00000000U - // .. .. ==> MASK : 0x000000FEU VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060C8, 0x000000FFU ,0x00000000U), - // .. .. UNCORR_ECC_LOG_VALID = 0x0 - // .. .. ==> 0XF80060DC[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060DC, 0x00000001U ,0x00000000U), - // .. .. STAT_NUM_CORR_ERR = 0x0 - // .. .. ==> 0XF80060F0[15:8] = 0x00000000U - // .. .. ==> MASK : 0x0000FF00U VAL : 0x00000000U - // .. .. STAT_NUM_UNCORR_ERR = 0x0 - // .. .. ==> 0XF80060F0[7:0] = 0x00000000U - // .. .. ==> MASK : 0x000000FFU VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060F0, 0x0000FFFFU ,0x00000000U), - // .. .. reg_ddrc_ecc_mode = 0x0 - // .. .. ==> 0XF80060F4[2:0] = 0x00000000U - // .. .. ==> MASK : 0x00000007U VAL : 0x00000000U - // .. .. reg_ddrc_dis_scrub = 0x1 - // .. .. ==> 0XF80060F4[3:3] = 0x00000001U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000008U - // .. .. - EMIT_MASKWRITE(0XF80060F4, 0x0000000FU ,0x00000008U), - // .. .. reg_phy_dif_on = 0x0 - // .. .. ==> 0XF8006114[3:0] = 0x00000000U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U - // .. .. reg_phy_dif_off = 0x0 - // .. .. ==> 0XF8006114[7:4] = 0x00000000U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006114, 0x000000FFU ,0x00000000U), - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF8006118[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006118[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF8006118[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006118[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_tx = 0x0 - // .. .. ==> 0XF8006118[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_rx = 0x0 - // .. .. ==> 0XF8006118[5:5] = 0x00000000U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF8006118[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF8006118[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF8006118[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF8006118, 0x7FFFFFFFU ,0x40000001U), - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF800611C[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF800611C[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF800611C[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF800611C[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_tx = 0x0 - // .. .. ==> 0XF800611C[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_rx = 0x0 - // .. .. ==> 0XF800611C[5:5] = 0x00000000U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF800611C[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF800611C[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF800611C[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF800611C, 0x7FFFFFFFU ,0x40000001U), - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF8006120[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006120[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF8006120[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006120[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_tx = 0x0 - // .. .. ==> 0XF8006120[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_rx = 0x0 - // .. .. ==> 0XF8006120[5:5] = 0x00000000U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF8006120[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF8006120[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF8006120[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF8006120[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006120[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF8006120[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006120[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_tx = 0x0 - // .. .. ==> 0XF8006120[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_rx = 0x0 - // .. .. ==> 0XF8006120[5:5] = 0x00000000U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF8006120[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF8006120[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF8006120[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF8006120, 0x7FFFFFFFU ,0x40000001U), - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF8006124[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006124[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF8006124[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006124[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_tx = 0x0 - // .. .. ==> 0XF8006124[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_rx = 0x0 - // .. .. ==> 0XF8006124[5:5] = 0x00000000U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF8006124[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF8006124[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF8006124[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF8006124, 0x7FFFFFFFU ,0x40000001U), - // .. .. reg_phy_wrlvl_init_ratio = 0x0 - // .. .. ==> 0XF800612C[9:0] = 0x00000000U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U - // .. .. reg_phy_gatelvl_init_ratio = 0x8f - // .. .. ==> 0XF800612C[19:10] = 0x0000008FU - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00023C00U - // .. .. - EMIT_MASKWRITE(0XF800612C, 0x000FFFFFU ,0x00023C00U), - // .. .. reg_phy_wrlvl_init_ratio = 0x0 - // .. .. ==> 0XF8006130[9:0] = 0x00000000U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U - // .. .. reg_phy_gatelvl_init_ratio = 0x8a - // .. .. ==> 0XF8006130[19:10] = 0x0000008AU - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00022800U - // .. .. - EMIT_MASKWRITE(0XF8006130, 0x000FFFFFU ,0x00022800U), - // .. .. reg_phy_wrlvl_init_ratio = 0x0 - // .. .. ==> 0XF8006134[9:0] = 0x00000000U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U - // .. .. reg_phy_gatelvl_init_ratio = 0x8b - // .. .. ==> 0XF8006134[19:10] = 0x0000008BU - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00022C00U - // .. .. - EMIT_MASKWRITE(0XF8006134, 0x000FFFFFU ,0x00022C00U), - // .. .. reg_phy_wrlvl_init_ratio = 0x0 - // .. .. ==> 0XF8006138[9:0] = 0x00000000U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U - // .. .. reg_phy_gatelvl_init_ratio = 0x92 - // .. .. ==> 0XF8006138[19:10] = 0x00000092U - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00024800U - // .. .. - EMIT_MASKWRITE(0XF8006138, 0x000FFFFFU ,0x00024800U), - // .. .. reg_phy_rd_dqs_slave_ratio = 0x35 - // .. .. ==> 0XF8006140[9:0] = 0x00000035U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U - // .. .. reg_phy_rd_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006140[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_rd_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006140[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006140, 0x000FFFFFU ,0x00000035U), - // .. .. reg_phy_rd_dqs_slave_ratio = 0x35 - // .. .. ==> 0XF8006144[9:0] = 0x00000035U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U - // .. .. reg_phy_rd_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006144[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_rd_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006144[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006144, 0x000FFFFFU ,0x00000035U), - // .. .. reg_phy_rd_dqs_slave_ratio = 0x35 - // .. .. ==> 0XF8006148[9:0] = 0x00000035U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U - // .. .. reg_phy_rd_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006148[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_rd_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006148[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006148, 0x000FFFFFU ,0x00000035U), - // .. .. reg_phy_rd_dqs_slave_ratio = 0x35 - // .. .. ==> 0XF800614C[9:0] = 0x00000035U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U - // .. .. reg_phy_rd_dqs_slave_force = 0x0 - // .. .. ==> 0XF800614C[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_rd_dqs_slave_delay = 0x0 - // .. .. ==> 0XF800614C[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800614C, 0x000FFFFFU ,0x00000035U), - // .. .. reg_phy_wr_dqs_slave_ratio = 0x77 - // .. .. ==> 0XF8006154[9:0] = 0x00000077U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000077U - // .. .. reg_phy_wr_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006154[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006154[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006154, 0x000FFFFFU ,0x00000077U), - // .. .. reg_phy_wr_dqs_slave_ratio = 0x7c - // .. .. ==> 0XF8006158[9:0] = 0x0000007CU - // .. .. ==> MASK : 0x000003FFU VAL : 0x0000007CU - // .. .. reg_phy_wr_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006158[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006158[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006158, 0x000FFFFFU ,0x0000007CU), - // .. .. reg_phy_wr_dqs_slave_ratio = 0x7c - // .. .. ==> 0XF800615C[9:0] = 0x0000007CU - // .. .. ==> MASK : 0x000003FFU VAL : 0x0000007CU - // .. .. reg_phy_wr_dqs_slave_force = 0x0 - // .. .. ==> 0XF800615C[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_dqs_slave_delay = 0x0 - // .. .. ==> 0XF800615C[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800615C, 0x000FFFFFU ,0x0000007CU), - // .. .. reg_phy_wr_dqs_slave_ratio = 0x75 - // .. .. ==> 0XF8006160[9:0] = 0x00000075U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000075U - // .. .. reg_phy_wr_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006160[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006160[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006160, 0x000FFFFFU ,0x00000075U), - // .. .. reg_phy_fifo_we_slave_ratio = 0xe4 - // .. .. ==> 0XF8006168[10:0] = 0x000000E4U - // .. .. ==> MASK : 0x000007FFU VAL : 0x000000E4U - // .. .. reg_phy_fifo_we_in_force = 0x0 - // .. .. ==> 0XF8006168[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. reg_phy_fifo_we_in_delay = 0x0 - // .. .. ==> 0XF8006168[20:12] = 0x00000000U - // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006168, 0x001FFFFFU ,0x000000E4U), - // .. .. reg_phy_fifo_we_slave_ratio = 0xdf - // .. .. ==> 0XF800616C[10:0] = 0x000000DFU - // .. .. ==> MASK : 0x000007FFU VAL : 0x000000DFU - // .. .. reg_phy_fifo_we_in_force = 0x0 - // .. .. ==> 0XF800616C[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. reg_phy_fifo_we_in_delay = 0x0 - // .. .. ==> 0XF800616C[20:12] = 0x00000000U - // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800616C, 0x001FFFFFU ,0x000000DFU), - // .. .. reg_phy_fifo_we_slave_ratio = 0xe0 - // .. .. ==> 0XF8006170[10:0] = 0x000000E0U - // .. .. ==> MASK : 0x000007FFU VAL : 0x000000E0U - // .. .. reg_phy_fifo_we_in_force = 0x0 - // .. .. ==> 0XF8006170[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. reg_phy_fifo_we_in_delay = 0x0 - // .. .. ==> 0XF8006170[20:12] = 0x00000000U - // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006170, 0x001FFFFFU ,0x000000E0U), - // .. .. reg_phy_fifo_we_slave_ratio = 0xe7 - // .. .. ==> 0XF8006174[10:0] = 0x000000E7U - // .. .. ==> MASK : 0x000007FFU VAL : 0x000000E7U - // .. .. reg_phy_fifo_we_in_force = 0x0 - // .. .. ==> 0XF8006174[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. reg_phy_fifo_we_in_delay = 0x0 - // .. .. ==> 0XF8006174[20:12] = 0x00000000U - // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006174, 0x001FFFFFU ,0x000000E7U), - // .. .. reg_phy_wr_data_slave_ratio = 0xb7 - // .. .. ==> 0XF800617C[9:0] = 0x000000B7U - // .. .. ==> MASK : 0x000003FFU VAL : 0x000000B7U - // .. .. reg_phy_wr_data_slave_force = 0x0 - // .. .. ==> 0XF800617C[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_data_slave_delay = 0x0 - // .. .. ==> 0XF800617C[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800617C, 0x000FFFFFU ,0x000000B7U), - // .. .. reg_phy_wr_data_slave_ratio = 0xbc - // .. .. ==> 0XF8006180[9:0] = 0x000000BCU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000000BCU - // .. .. reg_phy_wr_data_slave_force = 0x0 - // .. .. ==> 0XF8006180[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_data_slave_delay = 0x0 - // .. .. ==> 0XF8006180[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006180, 0x000FFFFFU ,0x000000BCU), - // .. .. reg_phy_wr_data_slave_ratio = 0xbc - // .. .. ==> 0XF8006184[9:0] = 0x000000BCU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000000BCU - // .. .. reg_phy_wr_data_slave_force = 0x0 - // .. .. ==> 0XF8006184[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_data_slave_delay = 0x0 - // .. .. ==> 0XF8006184[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006184, 0x000FFFFFU ,0x000000BCU), - // .. .. reg_phy_wr_data_slave_ratio = 0xb5 - // .. .. ==> 0XF8006188[9:0] = 0x000000B5U - // .. .. ==> MASK : 0x000003FFU VAL : 0x000000B5U - // .. .. reg_phy_wr_data_slave_force = 0x0 - // .. .. ==> 0XF8006188[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_data_slave_delay = 0x0 - // .. .. ==> 0XF8006188[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006188, 0x000FFFFFU ,0x000000B5U), - // .. .. reg_phy_loopback = 0x0 - // .. .. ==> 0XF8006190[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_phy_bl2 = 0x0 - // .. .. ==> 0XF8006190[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_at_spd_atpg = 0x0 - // .. .. ==> 0XF8006190[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_bist_enable = 0x0 - // .. .. ==> 0XF8006190[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_bist_force_err = 0x0 - // .. .. ==> 0XF8006190[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reg_phy_bist_mode = 0x0 - // .. .. ==> 0XF8006190[6:5] = 0x00000000U - // .. .. ==> MASK : 0x00000060U VAL : 0x00000000U - // .. .. reg_phy_invert_clkout = 0x1 - // .. .. ==> 0XF8006190[7:7] = 0x00000001U - // .. .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. .. reg_phy_all_dq_mpr_rd_resp = 0x0 - // .. .. ==> 0XF8006190[8:8] = 0x00000000U - // .. .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. .. reg_phy_sel_logic = 0x0 - // .. .. ==> 0XF8006190[9:9] = 0x00000000U - // .. .. ==> MASK : 0x00000200U VAL : 0x00000000U - // .. .. reg_phy_ctrl_slave_ratio = 0x100 - // .. .. ==> 0XF8006190[19:10] = 0x00000100U - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00040000U - // .. .. reg_phy_ctrl_slave_force = 0x0 - // .. .. ==> 0XF8006190[20:20] = 0x00000000U - // .. .. ==> MASK : 0x00100000U VAL : 0x00000000U - // .. .. reg_phy_ctrl_slave_delay = 0x0 - // .. .. ==> 0XF8006190[27:21] = 0x00000000U - // .. .. ==> MASK : 0x0FE00000U VAL : 0x00000000U - // .. .. reg_phy_use_rank0_delays = 0x1 - // .. .. ==> 0XF8006190[28:28] = 0x00000001U - // .. .. ==> MASK : 0x10000000U VAL : 0x10000000U - // .. .. reg_phy_lpddr = 0x0 - // .. .. ==> 0XF8006190[29:29] = 0x00000000U - // .. .. ==> MASK : 0x20000000U VAL : 0x00000000U - // .. .. reg_phy_cmd_latency = 0x0 - // .. .. ==> 0XF8006190[30:30] = 0x00000000U - // .. .. ==> MASK : 0x40000000U VAL : 0x00000000U - // .. .. reg_phy_int_lpbk = 0x0 - // .. .. ==> 0XF8006190[31:31] = 0x00000000U - // .. .. ==> MASK : 0x80000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006190, 0xFFFFFFFFU ,0x10040080U), - // .. .. reg_phy_wr_rl_delay = 0x2 - // .. .. ==> 0XF8006194[4:0] = 0x00000002U - // .. .. ==> MASK : 0x0000001FU VAL : 0x00000002U - // .. .. reg_phy_rd_rl_delay = 0x4 - // .. .. ==> 0XF8006194[9:5] = 0x00000004U - // .. .. ==> MASK : 0x000003E0U VAL : 0x00000080U - // .. .. reg_phy_dll_lock_diff = 0xf - // .. .. ==> 0XF8006194[13:10] = 0x0000000FU - // .. .. ==> MASK : 0x00003C00U VAL : 0x00003C00U - // .. .. reg_phy_use_wr_level = 0x1 - // .. .. ==> 0XF8006194[14:14] = 0x00000001U - // .. .. ==> MASK : 0x00004000U VAL : 0x00004000U - // .. .. reg_phy_use_rd_dqs_gate_level = 0x1 - // .. .. ==> 0XF8006194[15:15] = 0x00000001U - // .. .. ==> MASK : 0x00008000U VAL : 0x00008000U - // .. .. reg_phy_use_rd_data_eye_level = 0x1 - // .. .. ==> 0XF8006194[16:16] = 0x00000001U - // .. .. ==> MASK : 0x00010000U VAL : 0x00010000U - // .. .. reg_phy_dis_calib_rst = 0x0 - // .. .. ==> 0XF8006194[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_phy_ctrl_slave_delay = 0x0 - // .. .. ==> 0XF8006194[19:18] = 0x00000000U - // .. .. ==> MASK : 0x000C0000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006194, 0x000FFFFFU ,0x0001FC82U), - // .. .. reg_arb_page_addr_mask = 0x0 - // .. .. ==> 0XF8006204[31:0] = 0x00000000U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006204, 0xFFFFFFFFU ,0x00000000U), - // .. .. reg_arb_pri_wr_portn = 0x3ff - // .. .. ==> 0XF8006208[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_wr_portn = 0x0 - // .. .. ==> 0XF8006208[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_wr_portn = 0x0 - // .. .. ==> 0XF8006208[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_wr_portn = 0x0 - // .. .. ==> 0XF8006208[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_dis_rmw_portn = 0x1 - // .. .. ==> 0XF8006208[19:19] = 0x00000001U - // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. .. - EMIT_MASKWRITE(0XF8006208, 0x000F03FFU ,0x000803FFU), - // .. .. reg_arb_pri_wr_portn = 0x3ff - // .. .. ==> 0XF800620C[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_wr_portn = 0x0 - // .. .. ==> 0XF800620C[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_wr_portn = 0x0 - // .. .. ==> 0XF800620C[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_wr_portn = 0x0 - // .. .. ==> 0XF800620C[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_dis_rmw_portn = 0x1 - // .. .. ==> 0XF800620C[19:19] = 0x00000001U - // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. .. - EMIT_MASKWRITE(0XF800620C, 0x000F03FFU ,0x000803FFU), - // .. .. reg_arb_pri_wr_portn = 0x3ff - // .. .. ==> 0XF8006210[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_wr_portn = 0x0 - // .. .. ==> 0XF8006210[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_wr_portn = 0x0 - // .. .. ==> 0XF8006210[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_wr_portn = 0x0 - // .. .. ==> 0XF8006210[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_dis_rmw_portn = 0x1 - // .. .. ==> 0XF8006210[19:19] = 0x00000001U - // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. .. - EMIT_MASKWRITE(0XF8006210, 0x000F03FFU ,0x000803FFU), - // .. .. reg_arb_pri_wr_portn = 0x3ff - // .. .. ==> 0XF8006214[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_wr_portn = 0x0 - // .. .. ==> 0XF8006214[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_wr_portn = 0x0 - // .. .. ==> 0XF8006214[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_wr_portn = 0x0 - // .. .. ==> 0XF8006214[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_dis_rmw_portn = 0x1 - // .. .. ==> 0XF8006214[19:19] = 0x00000001U - // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. .. - EMIT_MASKWRITE(0XF8006214, 0x000F03FFU ,0x000803FFU), - // .. .. reg_arb_pri_rd_portn = 0x3ff - // .. .. ==> 0XF8006218[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_rd_portn = 0x0 - // .. .. ==> 0XF8006218[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_rd_portn = 0x0 - // .. .. ==> 0XF8006218[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_rd_portn = 0x0 - // .. .. ==> 0XF8006218[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_set_hpr_rd_portn = 0x0 - // .. .. ==> 0XF8006218[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006218, 0x000F03FFU ,0x000003FFU), - // .. .. reg_arb_pri_rd_portn = 0x3ff - // .. .. ==> 0XF800621C[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_rd_portn = 0x0 - // .. .. ==> 0XF800621C[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_rd_portn = 0x0 - // .. .. ==> 0XF800621C[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_rd_portn = 0x0 - // .. .. ==> 0XF800621C[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_set_hpr_rd_portn = 0x0 - // .. .. ==> 0XF800621C[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800621C, 0x000F03FFU ,0x000003FFU), - // .. .. reg_arb_pri_rd_portn = 0x3ff - // .. .. ==> 0XF8006220[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_rd_portn = 0x0 - // .. .. ==> 0XF8006220[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_rd_portn = 0x0 - // .. .. ==> 0XF8006220[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_rd_portn = 0x0 - // .. .. ==> 0XF8006220[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_set_hpr_rd_portn = 0x0 - // .. .. ==> 0XF8006220[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006220, 0x000F03FFU ,0x000003FFU), - // .. .. reg_arb_pri_rd_portn = 0x3ff - // .. .. ==> 0XF8006224[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_rd_portn = 0x0 - // .. .. ==> 0XF8006224[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_rd_portn = 0x0 - // .. .. ==> 0XF8006224[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_rd_portn = 0x0 - // .. .. ==> 0XF8006224[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_set_hpr_rd_portn = 0x0 - // .. .. ==> 0XF8006224[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006224, 0x000F03FFU ,0x000003FFU), - // .. .. reg_ddrc_lpddr2 = 0x0 - // .. .. ==> 0XF80062A8[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_per_bank_refresh = 0x0 - // .. .. ==> 0XF80062A8[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_ddrc_derate_enable = 0x0 - // .. .. ==> 0XF80062A8[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_ddrc_mr4_margin = 0x0 - // .. .. ==> 0XF80062A8[11:4] = 0x00000000U - // .. .. ==> MASK : 0x00000FF0U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80062A8, 0x00000FF7U ,0x00000000U), - // .. .. reg_ddrc_mr4_read_interval = 0x0 - // .. .. ==> 0XF80062AC[31:0] = 0x00000000U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80062AC, 0xFFFFFFFFU ,0x00000000U), - // .. .. reg_ddrc_min_stable_clock_x1 = 0x5 - // .. .. ==> 0XF80062B0[3:0] = 0x00000005U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000005U - // .. .. reg_ddrc_idle_after_reset_x32 = 0x12 - // .. .. ==> 0XF80062B0[11:4] = 0x00000012U - // .. .. ==> MASK : 0x00000FF0U VAL : 0x00000120U - // .. .. reg_ddrc_t_mrw = 0x5 - // .. .. ==> 0XF80062B0[21:12] = 0x00000005U - // .. .. ==> MASK : 0x003FF000U VAL : 0x00005000U - // .. .. - EMIT_MASKWRITE(0XF80062B0, 0x003FFFFFU ,0x00005125U), - // .. .. reg_ddrc_max_auto_init_x1024 = 0xa6 - // .. .. ==> 0XF80062B4[7:0] = 0x000000A6U - // .. .. ==> MASK : 0x000000FFU VAL : 0x000000A6U - // .. .. reg_ddrc_dev_zqinit_x32 = 0x12 - // .. .. ==> 0XF80062B4[17:8] = 0x00000012U - // .. .. ==> MASK : 0x0003FF00U VAL : 0x00001200U - // .. .. - EMIT_MASKWRITE(0XF80062B4, 0x0003FFFFU ,0x000012A6U), - // .. .. START: POLL ON DCI STATUS - // .. .. DONE = 1 - // .. .. ==> 0XF8000B74[13:13] = 0x00000001U - // .. .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. .. - EMIT_MASKPOLL(0XF8000B74, 0x00002000U), - // .. .. FINISH: POLL ON DCI STATUS - // .. .. START: UNLOCK DDR - // .. .. reg_ddrc_soft_rstb = 0x1 - // .. .. ==> 0XF8006000[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_ddrc_powerdown_en = 0x0 - // .. .. ==> 0XF8006000[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_ddrc_data_bus_width = 0x0 - // .. .. ==> 0XF8006000[3:2] = 0x00000000U - // .. .. ==> MASK : 0x0000000CU VAL : 0x00000000U - // .. .. reg_ddrc_burst8_refresh = 0x0 - // .. .. ==> 0XF8006000[6:4] = 0x00000000U - // .. .. ==> MASK : 0x00000070U VAL : 0x00000000U - // .. .. reg_ddrc_rdwr_idle_gap = 1 - // .. .. ==> 0XF8006000[13:7] = 0x00000001U - // .. .. ==> MASK : 0x00003F80U VAL : 0x00000080U - // .. .. reg_ddrc_dis_rd_bypass = 0x0 - // .. .. ==> 0XF8006000[14:14] = 0x00000000U - // .. .. ==> MASK : 0x00004000U VAL : 0x00000000U - // .. .. reg_ddrc_dis_act_bypass = 0x0 - // .. .. ==> 0XF8006000[15:15] = 0x00000000U - // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U - // .. .. reg_ddrc_dis_auto_refresh = 0x0 - // .. .. ==> 0XF8006000[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006000, 0x0001FFFFU ,0x00000081U), - // .. .. FINISH: UNLOCK DDR - // .. .. START: CHECK DDR STATUS - // .. .. ddrc_reg_operating_mode = 1 - // .. .. ==> 0XF8006054[2:0] = 0x00000001U - // .. .. ==> MASK : 0x00000007U VAL : 0x00000001U - // .. .. - EMIT_MASKPOLL(0XF8006054, 0x00000007U), - // .. .. FINISH: CHECK DDR STATUS - // .. FINISH: DDR INITIALIZATION - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_mio_init_data_2_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: OCM REMAPPING - // .. VREF_EN = 0x1 - // .. ==> 0XF8000B00[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. VREF_PULLUP_EN = 0x0 - // .. ==> 0XF8000B00[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. CLK_PULLUP_EN = 0x0 - // .. ==> 0XF8000B00[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. SRSTN_PULLUP_EN = 0x0 - // .. ==> 0XF8000B00[9:9] = 0x00000000U - // .. ==> MASK : 0x00000200U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B00, 0x00000303U ,0x00000001U), - // .. FINISH: OCM REMAPPING - // .. START: DDRIOB SETTINGS - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B40[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x0 - // .. ==> 0XF8000B40[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B40[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x0 - // .. ==> 0XF8000B40[4:4] = 0x00000000U - // .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. DCR_TYPE = 0x0 - // .. ==> 0XF8000B40[6:5] = 0x00000000U - // .. ==> MASK : 0x00000060U VAL : 0x00000000U - // .. IBUF_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B40[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B40[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B40[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B40[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B40, 0x00000FFFU ,0x00000600U), - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B44[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x0 - // .. ==> 0XF8000B44[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B44[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x0 - // .. ==> 0XF8000B44[4:4] = 0x00000000U - // .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. DCR_TYPE = 0x0 - // .. ==> 0XF8000B44[6:5] = 0x00000000U - // .. ==> MASK : 0x00000060U VAL : 0x00000000U - // .. IBUF_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B44[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B44[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B44[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B44[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B44, 0x00000FFFU ,0x00000600U), - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B48[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x1 - // .. ==> 0XF8000B48[2:1] = 0x00000001U - // .. ==> MASK : 0x00000006U VAL : 0x00000002U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B48[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x1 - // .. ==> 0XF8000B48[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. DCR_TYPE = 0x3 - // .. ==> 0XF8000B48[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. IBUF_DISABLE_MODE = 0 - // .. ==> 0XF8000B48[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0 - // .. ==> 0XF8000B48[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B48[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B48[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B48, 0x00000FFFU ,0x00000672U), - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B4C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x1 - // .. ==> 0XF8000B4C[2:1] = 0x00000001U - // .. ==> MASK : 0x00000006U VAL : 0x00000002U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B4C[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x1 - // .. ==> 0XF8000B4C[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. DCR_TYPE = 0x3 - // .. ==> 0XF8000B4C[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. IBUF_DISABLE_MODE = 0 - // .. ==> 0XF8000B4C[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0 - // .. ==> 0XF8000B4C[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B4C[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B4C[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B4C, 0x00000FFFU ,0x00000672U), - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B50[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x2 - // .. ==> 0XF8000B50[2:1] = 0x00000002U - // .. ==> MASK : 0x00000006U VAL : 0x00000004U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B50[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x1 - // .. ==> 0XF8000B50[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. DCR_TYPE = 0x3 - // .. ==> 0XF8000B50[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. IBUF_DISABLE_MODE = 0 - // .. ==> 0XF8000B50[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0 - // .. ==> 0XF8000B50[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B50[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B50[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B50, 0x00000FFFU ,0x00000674U), - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B54[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x2 - // .. ==> 0XF8000B54[2:1] = 0x00000002U - // .. ==> MASK : 0x00000006U VAL : 0x00000004U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B54[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x1 - // .. ==> 0XF8000B54[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. DCR_TYPE = 0x3 - // .. ==> 0XF8000B54[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. IBUF_DISABLE_MODE = 0 - // .. ==> 0XF8000B54[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0 - // .. ==> 0XF8000B54[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B54[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B54[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B54, 0x00000FFFU ,0x00000674U), - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B58[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x0 - // .. ==> 0XF8000B58[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B58[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x0 - // .. ==> 0XF8000B58[4:4] = 0x00000000U - // .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. DCR_TYPE = 0x0 - // .. ==> 0XF8000B58[6:5] = 0x00000000U - // .. ==> MASK : 0x00000060U VAL : 0x00000000U - // .. IBUF_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B58[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B58[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B58[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B58[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B58, 0x00000FFFU ,0x00000600U), - // .. DRIVE_P = 0x1c - // .. ==> 0XF8000B5C[6:0] = 0x0000001CU - // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU - // .. DRIVE_N = 0xc - // .. ==> 0XF8000B5C[13:7] = 0x0000000CU - // .. ==> MASK : 0x00003F80U VAL : 0x00000600U - // .. SLEW_P = 0x3 - // .. ==> 0XF8000B5C[18:14] = 0x00000003U - // .. ==> MASK : 0x0007C000U VAL : 0x0000C000U - // .. SLEW_N = 0x3 - // .. ==> 0XF8000B5C[23:19] = 0x00000003U - // .. ==> MASK : 0x00F80000U VAL : 0x00180000U - // .. GTL = 0x0 - // .. ==> 0XF8000B5C[26:24] = 0x00000000U - // .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. RTERM = 0x0 - // .. ==> 0XF8000B5C[31:27] = 0x00000000U - // .. ==> MASK : 0xF8000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B5C, 0xFFFFFFFFU ,0x0018C61CU), - // .. DRIVE_P = 0x1c - // .. ==> 0XF8000B60[6:0] = 0x0000001CU - // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU - // .. DRIVE_N = 0xc - // .. ==> 0XF8000B60[13:7] = 0x0000000CU - // .. ==> MASK : 0x00003F80U VAL : 0x00000600U - // .. SLEW_P = 0x6 - // .. ==> 0XF8000B60[18:14] = 0x00000006U - // .. ==> MASK : 0x0007C000U VAL : 0x00018000U - // .. SLEW_N = 0x1f - // .. ==> 0XF8000B60[23:19] = 0x0000001FU - // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U - // .. GTL = 0x0 - // .. ==> 0XF8000B60[26:24] = 0x00000000U - // .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. RTERM = 0x0 - // .. ==> 0XF8000B60[31:27] = 0x00000000U - // .. ==> MASK : 0xF8000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B60, 0xFFFFFFFFU ,0x00F9861CU), - // .. DRIVE_P = 0x1c - // .. ==> 0XF8000B64[6:0] = 0x0000001CU - // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU - // .. DRIVE_N = 0xc - // .. ==> 0XF8000B64[13:7] = 0x0000000CU - // .. ==> MASK : 0x00003F80U VAL : 0x00000600U - // .. SLEW_P = 0x6 - // .. ==> 0XF8000B64[18:14] = 0x00000006U - // .. ==> MASK : 0x0007C000U VAL : 0x00018000U - // .. SLEW_N = 0x1f - // .. ==> 0XF8000B64[23:19] = 0x0000001FU - // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U - // .. GTL = 0x0 - // .. ==> 0XF8000B64[26:24] = 0x00000000U - // .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. RTERM = 0x0 - // .. ==> 0XF8000B64[31:27] = 0x00000000U - // .. ==> MASK : 0xF8000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B64, 0xFFFFFFFFU ,0x00F9861CU), - // .. DRIVE_P = 0x1c - // .. ==> 0XF8000B68[6:0] = 0x0000001CU - // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU - // .. DRIVE_N = 0xc - // .. ==> 0XF8000B68[13:7] = 0x0000000CU - // .. ==> MASK : 0x00003F80U VAL : 0x00000600U - // .. SLEW_P = 0x6 - // .. ==> 0XF8000B68[18:14] = 0x00000006U - // .. ==> MASK : 0x0007C000U VAL : 0x00018000U - // .. SLEW_N = 0x1f - // .. ==> 0XF8000B68[23:19] = 0x0000001FU - // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U - // .. GTL = 0x0 - // .. ==> 0XF8000B68[26:24] = 0x00000000U - // .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. RTERM = 0x0 - // .. ==> 0XF8000B68[31:27] = 0x00000000U - // .. ==> MASK : 0xF8000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B68, 0xFFFFFFFFU ,0x00F9861CU), - // .. VREF_INT_EN = 0x0 - // .. ==> 0XF8000B6C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. VREF_SEL = 0x0 - // .. ==> 0XF8000B6C[4:1] = 0x00000000U - // .. ==> MASK : 0x0000001EU VAL : 0x00000000U - // .. VREF_EXT_EN = 0x3 - // .. ==> 0XF8000B6C[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. VREF_PULLUP_EN = 0x0 - // .. ==> 0XF8000B6C[8:7] = 0x00000000U - // .. ==> MASK : 0x00000180U VAL : 0x00000000U - // .. REFIO_EN = 0x1 - // .. ==> 0XF8000B6C[9:9] = 0x00000001U - // .. ==> MASK : 0x00000200U VAL : 0x00000200U - // .. REFIO_TEST = 0x0 - // .. ==> 0XF8000B6C[11:10] = 0x00000000U - // .. ==> MASK : 0x00000C00U VAL : 0x00000000U - // .. REFIO_PULLUP_EN = 0x0 - // .. ==> 0XF8000B6C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DRST_B_PULLUP_EN = 0x0 - // .. ==> 0XF8000B6C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. CKE_PULLUP_EN = 0x0 - // .. ==> 0XF8000B6C[14:14] = 0x00000000U - // .. ==> MASK : 0x00004000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B6C, 0x00007FFFU ,0x00000260U), - // .. .. START: ASSERT RESET - // .. .. RESET = 1 - // .. .. ==> 0XF8000B70[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. VRN_OUT = 0x1 - // .. .. ==> 0XF8000B70[5:5] = 0x00000001U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000020U - // .. .. - EMIT_MASKWRITE(0XF8000B70, 0x00000021U ,0x00000021U), - // .. .. FINISH: ASSERT RESET - // .. .. START: DEASSERT RESET - // .. .. RESET = 0 - // .. .. ==> 0XF8000B70[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. VRN_OUT = 0x1 - // .. .. ==> 0XF8000B70[5:5] = 0x00000001U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000020U - // .. .. - EMIT_MASKWRITE(0XF8000B70, 0x00000021U ,0x00000020U), - // .. .. FINISH: DEASSERT RESET - // .. .. RESET = 0x1 - // .. .. ==> 0XF8000B70[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. ENABLE = 0x1 - // .. .. ==> 0XF8000B70[1:1] = 0x00000001U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. .. VRP_TRI = 0x0 - // .. .. ==> 0XF8000B70[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. VRN_TRI = 0x0 - // .. .. ==> 0XF8000B70[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. VRP_OUT = 0x0 - // .. .. ==> 0XF8000B70[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. VRN_OUT = 0x1 - // .. .. ==> 0XF8000B70[5:5] = 0x00000001U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000020U - // .. .. NREF_OPT1 = 0x0 - // .. .. ==> 0XF8000B70[7:6] = 0x00000000U - // .. .. ==> MASK : 0x000000C0U VAL : 0x00000000U - // .. .. NREF_OPT2 = 0x0 - // .. .. ==> 0XF8000B70[10:8] = 0x00000000U - // .. .. ==> MASK : 0x00000700U VAL : 0x00000000U - // .. .. NREF_OPT4 = 0x1 - // .. .. ==> 0XF8000B70[13:11] = 0x00000001U - // .. .. ==> MASK : 0x00003800U VAL : 0x00000800U - // .. .. PREF_OPT1 = 0x0 - // .. .. ==> 0XF8000B70[16:14] = 0x00000000U - // .. .. ==> MASK : 0x0001C000U VAL : 0x00000000U - // .. .. PREF_OPT2 = 0x0 - // .. .. ==> 0XF8000B70[19:17] = 0x00000000U - // .. .. ==> MASK : 0x000E0000U VAL : 0x00000000U - // .. .. UPDATE_CONTROL = 0x0 - // .. .. ==> 0XF8000B70[20:20] = 0x00000000U - // .. .. ==> MASK : 0x00100000U VAL : 0x00000000U - // .. .. INIT_COMPLETE = 0x0 - // .. .. ==> 0XF8000B70[21:21] = 0x00000000U - // .. .. ==> MASK : 0x00200000U VAL : 0x00000000U - // .. .. TST_CLK = 0x0 - // .. .. ==> 0XF8000B70[22:22] = 0x00000000U - // .. .. ==> MASK : 0x00400000U VAL : 0x00000000U - // .. .. TST_HLN = 0x0 - // .. .. ==> 0XF8000B70[23:23] = 0x00000000U - // .. .. ==> MASK : 0x00800000U VAL : 0x00000000U - // .. .. TST_HLP = 0x0 - // .. .. ==> 0XF8000B70[24:24] = 0x00000000U - // .. .. ==> MASK : 0x01000000U VAL : 0x00000000U - // .. .. TST_RST = 0x0 - // .. .. ==> 0XF8000B70[25:25] = 0x00000000U - // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U - // .. .. INT_DCI_EN = 0x0 - // .. .. ==> 0XF8000B70[26:26] = 0x00000000U - // .. .. ==> MASK : 0x04000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8000B70, 0x07FFFFFFU ,0x00000823U), - // .. FINISH: DDRIOB SETTINGS - // .. START: MIO PROGRAMMING - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000700[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000700[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000700[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000700[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000700[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF8000700[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000700[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000700[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000700[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000700, 0x00003FFFU ,0x00001600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000704[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000704[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000704[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000704[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000704[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000704[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000704[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000704[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000704[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000704, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000708[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000708[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000708[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000708[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000708[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000708[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000708[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000708[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000708[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000708, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800070C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF800070C[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF800070C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800070C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800070C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800070C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF800070C[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF800070C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800070C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800070C, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000710[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000710[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000710[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000710[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000710[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000710[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000710[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000710[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000710[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000710, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000714[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000714[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000714[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000714[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000714[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000714[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000714[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000714[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000714[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000714, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000718[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000718[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000718[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000718[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000718[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000718[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000718[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000718[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000718[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000718, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800071C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800071C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF800071C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800071C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800071C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF800071C[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF800071C[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF800071C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800071C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800071C, 0x00003FFFU ,0x00000600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000720[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000720[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000720[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000720[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000720[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000720[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000720[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000720[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000720[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000720, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000724[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000724[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000724[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000724[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000724[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF8000724[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000724[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000724[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000724[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000724, 0x00003FFFU ,0x00001600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000728[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000728[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000728[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000728[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 2 - // .. ==> 0XF8000728[7:5] = 0x00000002U - // .. ==> MASK : 0x000000E0U VAL : 0x00000040U - // .. Speed = 0 - // .. ==> 0XF8000728[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000728[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000728[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000728[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000728, 0x00003FFFU ,0x00001640U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800072C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800072C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF800072C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800072C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 2 - // .. ==> 0XF800072C[7:5] = 0x00000002U - // .. ==> MASK : 0x000000E0U VAL : 0x00000040U - // .. Speed = 0 - // .. ==> 0XF800072C[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF800072C[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF800072C[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF800072C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800072C, 0x00003FFFU ,0x00001640U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000730[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000730[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000730[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000730[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 2 - // .. ==> 0XF8000730[7:5] = 0x00000002U - // .. ==> MASK : 0x000000E0U VAL : 0x00000040U - // .. Speed = 0 - // .. ==> 0XF8000730[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000730[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000730[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000730[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000730, 0x00003FFFU ,0x00001640U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000734[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000734[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000734[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000734[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 2 - // .. ==> 0XF8000734[7:5] = 0x00000002U - // .. ==> MASK : 0x000000E0U VAL : 0x00000040U - // .. Speed = 0 - // .. ==> 0XF8000734[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000734[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000734[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000734[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000734, 0x00003FFFU ,0x00001640U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000738[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000738[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000738[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000738[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000738[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF8000738[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000738[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000738[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000738[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000738, 0x00003FFFU ,0x00001600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800073C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800073C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF800073C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800073C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800073C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF800073C[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF800073C[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF800073C[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF800073C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800073C, 0x00003FFFU ,0x00001600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000740[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000740[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000740[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000740[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000740[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000740[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000740[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000740[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000740[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000740, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000744[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000744[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000744[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000744[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000744[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000744[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000744[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000744[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000744[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000744, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000748[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000748[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000748[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000748[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000748[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000748[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000748[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000748[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000748[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000748, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800074C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF800074C[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF800074C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800074C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800074C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800074C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF800074C[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF800074C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF800074C[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF800074C, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000750[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000750[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000750[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000750[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000750[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000750[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000750[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000750[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000750[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000750, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000754[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000754[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000754[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000754[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000754[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000754[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000754[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000754[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000754[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000754, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000758[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF8000758[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000758[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000758[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000758[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000758[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000758[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000758[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000758[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000758, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF800075C[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF800075C[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF800075C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800075C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800075C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800075C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF800075C[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF800075C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800075C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800075C, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000760[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF8000760[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000760[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000760[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000760[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000760[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000760[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000760[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000760[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000760, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000764[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF8000764[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000764[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000764[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000764[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000764[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000764[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000764[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000764[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000764, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000768[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF8000768[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000768[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000768[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000768[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000768[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000768[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000768[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000768[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000768, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF800076C[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF800076C[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF800076C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800076C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800076C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800076C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF800076C[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF800076C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800076C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800076C, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000770[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000770[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000770[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000770[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000770[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000770[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000770[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000770[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000770[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000770, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000774[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 0 - // .. ==> 0XF8000774[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000774[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000774[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000774[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000774[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000774[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000774[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000774[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000774, 0x00003FFFU ,0x00000305U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000778[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000778[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000778[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000778[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000778[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000778[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000778[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000778[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000778[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000778, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF800077C[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 0 - // .. ==> 0XF800077C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF800077C[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF800077C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800077C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800077C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF800077C[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF800077C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800077C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800077C, 0x00003FFFU ,0x00000305U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000780[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000780[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000780[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000780[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000780[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000780[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000780[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000780[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000780[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000780, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000784[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000784[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000784[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000784[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000784[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000784[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000784[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000784[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000784[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000784, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000788[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000788[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000788[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000788[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000788[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000788[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000788[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000788[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000788[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000788, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800078C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800078C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF800078C[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF800078C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800078C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800078C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF800078C[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF800078C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800078C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800078C, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000790[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 0 - // .. ==> 0XF8000790[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000790[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000790[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000790[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000790[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000790[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000790[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000790[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000790, 0x00003FFFU ,0x00000305U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000794[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000794[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000794[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000794[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000794[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000794[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000794[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000794[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000794[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000794, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000798[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000798[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000798[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000798[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000798[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000798[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000798[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000798[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000798[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000798, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800079C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800079C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF800079C[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF800079C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800079C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800079C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF800079C[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF800079C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800079C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800079C, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007A0[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007A0[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007A0[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007A0[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007A0[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007A0[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007A0[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007A0[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007A0[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007A0, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007A4[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007A4[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007A4[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007A4[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007A4[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007A4[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007A4[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007A4[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007A4[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007A4, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007A8[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007A8[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007A8[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007A8[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007A8[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007A8[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007A8[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007A8[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007A8[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007A8, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007AC[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007AC[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007AC[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007AC[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007AC[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007AC[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007AC[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007AC[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007AC[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007AC, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007B0[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007B0[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007B0[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007B0[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007B0[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007B0[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007B0[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007B0[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007B0[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007B0, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007B4[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007B4[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007B4[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007B4[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007B4[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007B4[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007B4[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007B4[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007B4[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007B4, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007B8[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007B8[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007B8[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007B8[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007B8[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007B8[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007B8[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 1 - // .. ==> 0XF80007B8[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007B8[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007B8, 0x00003FFFU ,0x00001200U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF80007BC[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. Speed = 0 - // .. ==> 0XF80007BC[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007BC[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007BC[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007BC[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007BC, 0x00003F01U ,0x00000201U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007C0[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007C0[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007C0[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007C0[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 7 - // .. ==> 0XF80007C0[7:5] = 0x00000007U - // .. ==> MASK : 0x000000E0U VAL : 0x000000E0U - // .. Speed = 0 - // .. ==> 0XF80007C0[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007C0[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007C0[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007C0[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007C0, 0x00003FFFU ,0x000002E0U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF80007C4[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 0 - // .. ==> 0XF80007C4[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007C4[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007C4[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 7 - // .. ==> 0XF80007C4[7:5] = 0x00000007U - // .. ==> MASK : 0x000000E0U VAL : 0x000000E0U - // .. Speed = 0 - // .. ==> 0XF80007C4[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007C4[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007C4[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007C4[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007C4, 0x00003FFFU ,0x000002E1U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007C8[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007C8[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007C8[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007C8[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007C8[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007C8[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007C8[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007C8[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007C8[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007C8, 0x00003FFFU ,0x00000200U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007CC[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007CC[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007CC[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007CC[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007CC[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007CC[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007CC[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007CC[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007CC[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007CC, 0x00003FFFU ,0x00000200U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007D0[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007D0[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007D0[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007D0[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007D0[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007D0[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007D0[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007D0[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007D0[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007D0, 0x00003FFFU ,0x00000200U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007D4[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007D4[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007D4[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007D4[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007D4[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007D4[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007D4[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007D4[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007D4[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007D4, 0x00003FFFU ,0x00000200U), - // .. SDIO0_WP_SEL = 55 - // .. ==> 0XF8000830[5:0] = 0x00000037U - // .. ==> MASK : 0x0000003FU VAL : 0x00000037U - // .. SDIO0_CD_SEL = 47 - // .. ==> 0XF8000830[21:16] = 0x0000002FU - // .. ==> MASK : 0x003F0000U VAL : 0x002F0000U - // .. - EMIT_MASKWRITE(0XF8000830, 0x003F003FU ,0x002F0037U), - // .. FINISH: MIO PROGRAMMING - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_peripherals_init_data_2_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: DDR TERM/IBUF_DISABLE_MODE SETTINGS - // .. IBUF_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B48[7:7] = 0x00000001U - // .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. TERM_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B48[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. - EMIT_MASKWRITE(0XF8000B48, 0x00000180U ,0x00000180U), - // .. IBUF_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B4C[7:7] = 0x00000001U - // .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. TERM_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B4C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. - EMIT_MASKWRITE(0XF8000B4C, 0x00000180U ,0x00000180U), - // .. IBUF_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B50[7:7] = 0x00000001U - // .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. TERM_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B50[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. - EMIT_MASKWRITE(0XF8000B50, 0x00000180U ,0x00000180U), - // .. IBUF_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B54[7:7] = 0x00000001U - // .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. TERM_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B54[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. - EMIT_MASKWRITE(0XF8000B54, 0x00000180U ,0x00000180U), - // .. FINISH: DDR TERM/IBUF_DISABLE_MODE SETTINGS - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // .. START: SRAM/NOR SET OPMODE - // .. FINISH: SRAM/NOR SET OPMODE - // .. START: UART REGISTERS - // .. BDIV = 0x6 - // .. ==> 0XE0001034[7:0] = 0x00000006U - // .. ==> MASK : 0x000000FFU VAL : 0x00000006U - // .. - EMIT_MASKWRITE(0XE0001034, 0x000000FFU ,0x00000006U), - // .. CD = 0x7c - // .. ==> 0XE0001018[15:0] = 0x0000007CU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000007CU - // .. - EMIT_MASKWRITE(0XE0001018, 0x0000FFFFU ,0x0000007CU), - // .. STPBRK = 0x0 - // .. ==> 0XE0001000[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. STTBRK = 0x0 - // .. ==> 0XE0001000[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. RSTTO = 0x0 - // .. ==> 0XE0001000[6:6] = 0x00000000U - // .. ==> MASK : 0x00000040U VAL : 0x00000000U - // .. TXDIS = 0x0 - // .. ==> 0XE0001000[5:5] = 0x00000000U - // .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. TXEN = 0x1 - // .. ==> 0XE0001000[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. RXDIS = 0x0 - // .. ==> 0XE0001000[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. RXEN = 0x1 - // .. ==> 0XE0001000[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. TXRES = 0x1 - // .. ==> 0XE0001000[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. RXRES = 0x1 - // .. ==> 0XE0001000[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. - EMIT_MASKWRITE(0XE0001000, 0x000001FFU ,0x00000017U), - // .. IRMODE = 0x0 - // .. ==> 0XE0001004[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. UCLKEN = 0x0 - // .. ==> 0XE0001004[10:10] = 0x00000000U - // .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. CHMODE = 0x0 - // .. ==> 0XE0001004[9:8] = 0x00000000U - // .. ==> MASK : 0x00000300U VAL : 0x00000000U - // .. NBSTOP = 0x0 - // .. ==> 0XE0001004[7:6] = 0x00000000U - // .. ==> MASK : 0x000000C0U VAL : 0x00000000U - // .. PAR = 0x4 - // .. ==> 0XE0001004[5:3] = 0x00000004U - // .. ==> MASK : 0x00000038U VAL : 0x00000020U - // .. CHRL = 0x0 - // .. ==> 0XE0001004[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. CLKS = 0x0 - // .. ==> 0XE0001004[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XE0001004, 0x00000FFFU ,0x00000020U), - // .. BDIV = 0x6 - // .. ==> 0XE0000034[7:0] = 0x00000006U - // .. ==> MASK : 0x000000FFU VAL : 0x00000006U - // .. - EMIT_MASKWRITE(0XE0000034, 0x000000FFU ,0x00000006U), - // .. CD = 0x7c - // .. ==> 0XE0000018[15:0] = 0x0000007CU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000007CU - // .. - EMIT_MASKWRITE(0XE0000018, 0x0000FFFFU ,0x0000007CU), - // .. STPBRK = 0x0 - // .. ==> 0XE0000000[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. STTBRK = 0x0 - // .. ==> 0XE0000000[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. RSTTO = 0x0 - // .. ==> 0XE0000000[6:6] = 0x00000000U - // .. ==> MASK : 0x00000040U VAL : 0x00000000U - // .. TXDIS = 0x0 - // .. ==> 0XE0000000[5:5] = 0x00000000U - // .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. TXEN = 0x1 - // .. ==> 0XE0000000[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. RXDIS = 0x0 - // .. ==> 0XE0000000[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. RXEN = 0x1 - // .. ==> 0XE0000000[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. TXRES = 0x1 - // .. ==> 0XE0000000[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. RXRES = 0x1 - // .. ==> 0XE0000000[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. - EMIT_MASKWRITE(0XE0000000, 0x000001FFU ,0x00000017U), - // .. IRMODE = 0x0 - // .. ==> 0XE0000004[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. UCLKEN = 0x0 - // .. ==> 0XE0000004[10:10] = 0x00000000U - // .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. CHMODE = 0x0 - // .. ==> 0XE0000004[9:8] = 0x00000000U - // .. ==> MASK : 0x00000300U VAL : 0x00000000U - // .. NBSTOP = 0x0 - // .. ==> 0XE0000004[7:6] = 0x00000000U - // .. ==> MASK : 0x000000C0U VAL : 0x00000000U - // .. PAR = 0x4 - // .. ==> 0XE0000004[5:3] = 0x00000004U - // .. ==> MASK : 0x00000038U VAL : 0x00000020U - // .. CHRL = 0x0 - // .. ==> 0XE0000004[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. CLKS = 0x0 - // .. ==> 0XE0000004[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XE0000004, 0x00000FFFU ,0x00000020U), - // .. FINISH: UART REGISTERS - // .. START: QSPI REGISTERS - // .. Holdb_dr = 1 - // .. ==> 0XE000D000[19:19] = 0x00000001U - // .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. - EMIT_MASKWRITE(0XE000D000, 0x00080000U ,0x00080000U), - // .. FINISH: QSPI REGISTERS - // .. START: PL POWER ON RESET REGISTERS - // .. PCFG_POR_CNT_4K = 0 - // .. ==> 0XF8007000[29:29] = 0x00000000U - // .. ==> MASK : 0x20000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8007000, 0x20000000U ,0x00000000U), - // .. FINISH: PL POWER ON RESET REGISTERS - // .. START: SMC TIMING CALCULATION REGISTER UPDATE - // .. .. START: NAND SET CYCLE - // .. .. FINISH: NAND SET CYCLE - // .. .. START: OPMODE - // .. .. FINISH: OPMODE - // .. .. START: DIRECT COMMAND - // .. .. FINISH: DIRECT COMMAND - // .. .. START: SRAM/NOR CS0 SET CYCLE - // .. .. FINISH: SRAM/NOR CS0 SET CYCLE - // .. .. START: DIRECT COMMAND - // .. .. FINISH: DIRECT COMMAND - // .. .. START: NOR CS0 BASE ADDRESS - // .. .. FINISH: NOR CS0 BASE ADDRESS - // .. .. START: SRAM/NOR CS1 SET CYCLE - // .. .. FINISH: SRAM/NOR CS1 SET CYCLE - // .. .. START: DIRECT COMMAND - // .. .. FINISH: DIRECT COMMAND - // .. .. START: NOR CS1 BASE ADDRESS - // .. .. FINISH: NOR CS1 BASE ADDRESS - // .. .. START: USB RESET - // .. .. .. START: USB0 RESET - // .. .. .. .. START: DIR MODE BANK 0 - // .. .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. .. START: DIR MODE BANK 1 - // .. .. .. .. DIRECTION_1 = 0x4000 - // .. .. .. .. ==> 0XE000A244[21:0] = 0x00004000U - // .. .. .. .. ==> MASK : 0x003FFFFFU VAL : 0x00004000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A244, 0x003FFFFFU ,0x00004000U), - // .. .. .. .. FINISH: DIR MODE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. MASK_1_LSW = 0xbfff - // .. .. .. .. ==> 0XE000A008[31:16] = 0x0000BFFFU - // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xBFFF0000U - // .. .. .. .. DATA_1_LSW = 0x4000 - // .. .. .. .. ==> 0XE000A008[15:0] = 0x00004000U - // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00004000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A008, 0xFFFFFFFFU ,0xBFFF4000U), - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. .. .. START: OUTPUT ENABLE BANK 1 - // .. .. .. .. OP_ENABLE_1 = 0x4000 - // .. .. .. .. ==> 0XE000A248[21:0] = 0x00004000U - // .. .. .. .. ==> MASK : 0x003FFFFFU VAL : 0x00004000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A248, 0x003FFFFFU ,0x00004000U), - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. MASK_1_LSW = 0xbfff - // .. .. .. .. ==> 0XE000A008[31:16] = 0x0000BFFFU - // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xBFFF0000U - // .. .. .. .. DATA_1_LSW = 0x0 - // .. .. .. .. ==> 0XE000A008[15:0] = 0x00000000U - // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A008, 0xFFFFFFFFU ,0xBFFF0000U), - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. MASK_1_LSW = 0xbfff - // .. .. .. .. ==> 0XE000A008[31:16] = 0x0000BFFFU - // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xBFFF0000U - // .. .. .. .. DATA_1_LSW = 0x4000 - // .. .. .. .. ==> 0XE000A008[15:0] = 0x00004000U - // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00004000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A008, 0xFFFFFFFFU ,0xBFFF4000U), - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: USB0 RESET - // .. .. .. START: USB1 RESET - // .. .. .. .. START: DIR MODE BANK 0 - // .. .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. .. START: DIR MODE BANK 1 - // .. .. .. .. FINISH: DIR MODE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. .. .. START: OUTPUT ENABLE BANK 1 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: USB1 RESET - // .. .. FINISH: USB RESET - // .. .. START: ENET RESET - // .. .. .. START: ENET0 RESET - // .. .. .. .. START: DIR MODE BANK 0 - // .. .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. .. START: DIR MODE BANK 1 - // .. .. .. .. FINISH: DIR MODE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. .. .. START: OUTPUT ENABLE BANK 1 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: ENET0 RESET - // .. .. .. START: ENET1 RESET - // .. .. .. .. START: DIR MODE BANK 0 - // .. .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. .. START: DIR MODE BANK 1 - // .. .. .. .. FINISH: DIR MODE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. .. .. START: OUTPUT ENABLE BANK 1 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: ENET1 RESET - // .. .. FINISH: ENET RESET - // .. .. START: I2C RESET - // .. .. .. START: I2C0 RESET - // .. .. .. .. START: DIR MODE GPIO BANK0 - // .. .. .. .. FINISH: DIR MODE GPIO BANK0 - // .. .. .. .. START: DIR MODE GPIO BANK1 - // .. .. .. .. FINISH: DIR MODE GPIO BANK1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE - // .. .. .. .. FINISH: OUTPUT ENABLE - // .. .. .. .. START: OUTPUT ENABLE - // .. .. .. .. FINISH: OUTPUT ENABLE - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: I2C0 RESET - // .. .. .. START: I2C1 RESET - // .. .. .. .. START: DIR MODE GPIO BANK0 - // .. .. .. .. FINISH: DIR MODE GPIO BANK0 - // .. .. .. .. START: DIR MODE GPIO BANK1 - // .. .. .. .. FINISH: DIR MODE GPIO BANK1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE - // .. .. .. .. FINISH: OUTPUT ENABLE - // .. .. .. .. START: OUTPUT ENABLE - // .. .. .. .. FINISH: OUTPUT ENABLE - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: I2C1 RESET - // .. .. FINISH: I2C RESET - // .. .. START: NOR CHIP SELECT - // .. .. .. START: DIR MODE BANK 0 - // .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. FINISH: NOR CHIP SELECT - // .. FINISH: SMC TIMING CALCULATION REGISTER UPDATE - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_post_config_2_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: ENABLING LEVEL SHIFTER - // .. USER_INP_ICT_EN_0 = 3 - // .. ==> 0XF8000900[1:0] = 0x00000003U - // .. ==> MASK : 0x00000003U VAL : 0x00000003U - // .. USER_INP_ICT_EN_1 = 3 - // .. ==> 0XF8000900[3:2] = 0x00000003U - // .. ==> MASK : 0x0000000CU VAL : 0x0000000CU - // .. - EMIT_MASKWRITE(0XF8000900, 0x0000000FU ,0x0000000FU), - // .. FINISH: ENABLING LEVEL SHIFTER - // .. START: FPGA RESETS TO 0 - // .. reserved_3 = 0 - // .. ==> 0XF8000240[31:25] = 0x00000000U - // .. ==> MASK : 0xFE000000U VAL : 0x00000000U - // .. FPGA_ACP_RST = 0 - // .. ==> 0XF8000240[24:24] = 0x00000000U - // .. ==> MASK : 0x01000000U VAL : 0x00000000U - // .. FPGA_AXDS3_RST = 0 - // .. ==> 0XF8000240[23:23] = 0x00000000U - // .. ==> MASK : 0x00800000U VAL : 0x00000000U - // .. FPGA_AXDS2_RST = 0 - // .. ==> 0XF8000240[22:22] = 0x00000000U - // .. ==> MASK : 0x00400000U VAL : 0x00000000U - // .. FPGA_AXDS1_RST = 0 - // .. ==> 0XF8000240[21:21] = 0x00000000U - // .. ==> MASK : 0x00200000U VAL : 0x00000000U - // .. FPGA_AXDS0_RST = 0 - // .. ==> 0XF8000240[20:20] = 0x00000000U - // .. ==> MASK : 0x00100000U VAL : 0x00000000U - // .. reserved_2 = 0 - // .. ==> 0XF8000240[19:18] = 0x00000000U - // .. ==> MASK : 0x000C0000U VAL : 0x00000000U - // .. FSSW1_FPGA_RST = 0 - // .. ==> 0XF8000240[17:17] = 0x00000000U - // .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. FSSW0_FPGA_RST = 0 - // .. ==> 0XF8000240[16:16] = 0x00000000U - // .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. reserved_1 = 0 - // .. ==> 0XF8000240[15:14] = 0x00000000U - // .. ==> MASK : 0x0000C000U VAL : 0x00000000U - // .. FPGA_FMSW1_RST = 0 - // .. ==> 0XF8000240[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. FPGA_FMSW0_RST = 0 - // .. ==> 0XF8000240[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. FPGA_DMA3_RST = 0 - // .. ==> 0XF8000240[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. FPGA_DMA2_RST = 0 - // .. ==> 0XF8000240[10:10] = 0x00000000U - // .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. FPGA_DMA1_RST = 0 - // .. ==> 0XF8000240[9:9] = 0x00000000U - // .. ==> MASK : 0x00000200U VAL : 0x00000000U - // .. FPGA_DMA0_RST = 0 - // .. ==> 0XF8000240[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. reserved = 0 - // .. ==> 0XF8000240[7:4] = 0x00000000U - // .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. FPGA3_OUT_RST = 0 - // .. ==> 0XF8000240[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. FPGA2_OUT_RST = 0 - // .. ==> 0XF8000240[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. FPGA1_OUT_RST = 0 - // .. ==> 0XF8000240[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. FPGA0_OUT_RST = 0 - // .. ==> 0XF8000240[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000240, 0xFFFFFFFFU ,0x00000000U), - // .. FINISH: FPGA RESETS TO 0 - // .. START: AFI REGISTERS - // .. .. START: AFI0 REGISTERS - // .. .. FINISH: AFI0 REGISTERS - // .. .. START: AFI1 REGISTERS - // .. .. FINISH: AFI1 REGISTERS - // .. .. START: AFI2 REGISTERS - // .. .. FINISH: AFI2 REGISTERS - // .. .. START: AFI3 REGISTERS - // .. .. FINISH: AFI3 REGISTERS - // .. FINISH: AFI REGISTERS - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_debug_2_0[] = { - // START: top - // .. START: CROSS TRIGGER CONFIGURATIONS - // .. .. START: UNLOCKING CTI REGISTERS - // .. .. KEY = 0XC5ACCE55 - // .. .. ==> 0XF8898FB0[31:0] = 0xC5ACCE55U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U - // .. .. - EMIT_WRITE(0XF8898FB0, 0xC5ACCE55U), - // .. .. KEY = 0XC5ACCE55 - // .. .. ==> 0XF8899FB0[31:0] = 0xC5ACCE55U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U - // .. .. - EMIT_WRITE(0XF8899FB0, 0xC5ACCE55U), - // .. .. KEY = 0XC5ACCE55 - // .. .. ==> 0XF8809FB0[31:0] = 0xC5ACCE55U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U - // .. .. - EMIT_WRITE(0XF8809FB0, 0xC5ACCE55U), - // .. .. FINISH: UNLOCKING CTI REGISTERS - // .. .. START: ENABLING CTI MODULES AND CHANNELS - // .. .. FINISH: ENABLING CTI MODULES AND CHANNELS - // .. .. START: MAPPING CPU0, CPU1 AND FTM EVENTS TO CTM CHANNELS - // .. .. FINISH: MAPPING CPU0, CPU1 AND FTM EVENTS TO CTM CHANNELS - // .. FINISH: CROSS TRIGGER CONFIGURATIONS - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_pll_init_data_1_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: PLL SLCR REGISTERS - // .. .. START: ARM PLL INIT - // .. .. PLL_RES = 0xc - // .. .. ==> 0XF8000110[7:4] = 0x0000000CU - // .. .. ==> MASK : 0x000000F0U VAL : 0x000000C0U - // .. .. PLL_CP = 0x2 - // .. .. ==> 0XF8000110[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. LOCK_CNT = 0x177 - // .. .. ==> 0XF8000110[21:12] = 0x00000177U - // .. .. ==> MASK : 0x003FF000U VAL : 0x00177000U - // .. .. - EMIT_MASKWRITE(0XF8000110, 0x003FFFF0U ,0x001772C0U), - // .. .. .. START: UPDATE FB_DIV - // .. .. .. PLL_FDIV = 0x1a - // .. .. .. ==> 0XF8000100[18:12] = 0x0000001AU - // .. .. .. ==> MASK : 0x0007F000U VAL : 0x0001A000U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x0007F000U ,0x0001A000U), - // .. .. .. FINISH: UPDATE FB_DIV - // .. .. .. START: BY PASS PLL - // .. .. .. PLL_BYPASS_FORCE = 1 - // .. .. .. ==> 0XF8000100[4:4] = 0x00000001U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x00000010U ,0x00000010U), - // .. .. .. FINISH: BY PASS PLL - // .. .. .. START: ASSERT RESET - // .. .. .. PLL_RESET = 1 - // .. .. .. ==> 0XF8000100[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x00000001U ,0x00000001U), - // .. .. .. FINISH: ASSERT RESET - // .. .. .. START: DEASSERT RESET - // .. .. .. PLL_RESET = 0 - // .. .. .. ==> 0XF8000100[0:0] = 0x00000000U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x00000001U ,0x00000000U), - // .. .. .. FINISH: DEASSERT RESET - // .. .. .. START: CHECK PLL STATUS - // .. .. .. ARM_PLL_LOCK = 1 - // .. .. .. ==> 0XF800010C[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. - EMIT_MASKPOLL(0XF800010C, 0x00000001U), - // .. .. .. FINISH: CHECK PLL STATUS - // .. .. .. START: REMOVE PLL BY PASS - // .. .. .. PLL_BYPASS_FORCE = 0 - // .. .. .. ==> 0XF8000100[4:4] = 0x00000000U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x00000010U ,0x00000000U), - // .. .. .. FINISH: REMOVE PLL BY PASS - // .. .. .. SRCSEL = 0x0 - // .. .. .. ==> 0XF8000120[5:4] = 0x00000000U - // .. .. .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. .. .. DIVISOR = 0x2 - // .. .. .. ==> 0XF8000120[13:8] = 0x00000002U - // .. .. .. ==> MASK : 0x00003F00U VAL : 0x00000200U - // .. .. .. CPU_6OR4XCLKACT = 0x1 - // .. .. .. ==> 0XF8000120[24:24] = 0x00000001U - // .. .. .. ==> MASK : 0x01000000U VAL : 0x01000000U - // .. .. .. CPU_3OR2XCLKACT = 0x1 - // .. .. .. ==> 0XF8000120[25:25] = 0x00000001U - // .. .. .. ==> MASK : 0x02000000U VAL : 0x02000000U - // .. .. .. CPU_2XCLKACT = 0x1 - // .. .. .. ==> 0XF8000120[26:26] = 0x00000001U - // .. .. .. ==> MASK : 0x04000000U VAL : 0x04000000U - // .. .. .. CPU_1XCLKACT = 0x1 - // .. .. .. ==> 0XF8000120[27:27] = 0x00000001U - // .. .. .. ==> MASK : 0x08000000U VAL : 0x08000000U - // .. .. .. CPU_PERI_CLKACT = 0x1 - // .. .. .. ==> 0XF8000120[28:28] = 0x00000001U - // .. .. .. ==> MASK : 0x10000000U VAL : 0x10000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000120, 0x1F003F30U ,0x1F000200U), - // .. .. FINISH: ARM PLL INIT - // .. .. START: DDR PLL INIT - // .. .. PLL_RES = 0xc - // .. .. ==> 0XF8000114[7:4] = 0x0000000CU - // .. .. ==> MASK : 0x000000F0U VAL : 0x000000C0U - // .. .. PLL_CP = 0x2 - // .. .. ==> 0XF8000114[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. LOCK_CNT = 0x1db - // .. .. ==> 0XF8000114[21:12] = 0x000001DBU - // .. .. ==> MASK : 0x003FF000U VAL : 0x001DB000U - // .. .. - EMIT_MASKWRITE(0XF8000114, 0x003FFFF0U ,0x001DB2C0U), - // .. .. .. START: UPDATE FB_DIV - // .. .. .. PLL_FDIV = 0x15 - // .. .. .. ==> 0XF8000104[18:12] = 0x00000015U - // .. .. .. ==> MASK : 0x0007F000U VAL : 0x00015000U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x0007F000U ,0x00015000U), - // .. .. .. FINISH: UPDATE FB_DIV - // .. .. .. START: BY PASS PLL - // .. .. .. PLL_BYPASS_FORCE = 1 - // .. .. .. ==> 0XF8000104[4:4] = 0x00000001U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x00000010U ,0x00000010U), - // .. .. .. FINISH: BY PASS PLL - // .. .. .. START: ASSERT RESET - // .. .. .. PLL_RESET = 1 - // .. .. .. ==> 0XF8000104[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x00000001U ,0x00000001U), - // .. .. .. FINISH: ASSERT RESET - // .. .. .. START: DEASSERT RESET - // .. .. .. PLL_RESET = 0 - // .. .. .. ==> 0XF8000104[0:0] = 0x00000000U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x00000001U ,0x00000000U), - // .. .. .. FINISH: DEASSERT RESET - // .. .. .. START: CHECK PLL STATUS - // .. .. .. DDR_PLL_LOCK = 1 - // .. .. .. ==> 0XF800010C[1:1] = 0x00000001U - // .. .. .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. .. .. - EMIT_MASKPOLL(0XF800010C, 0x00000002U), - // .. .. .. FINISH: CHECK PLL STATUS - // .. .. .. START: REMOVE PLL BY PASS - // .. .. .. PLL_BYPASS_FORCE = 0 - // .. .. .. ==> 0XF8000104[4:4] = 0x00000000U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x00000010U ,0x00000000U), - // .. .. .. FINISH: REMOVE PLL BY PASS - // .. .. .. DDR_3XCLKACT = 0x1 - // .. .. .. ==> 0XF8000124[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. DDR_2XCLKACT = 0x1 - // .. .. .. ==> 0XF8000124[1:1] = 0x00000001U - // .. .. .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. .. .. DDR_3XCLK_DIVISOR = 0x2 - // .. .. .. ==> 0XF8000124[25:20] = 0x00000002U - // .. .. .. ==> MASK : 0x03F00000U VAL : 0x00200000U - // .. .. .. DDR_2XCLK_DIVISOR = 0x3 - // .. .. .. ==> 0XF8000124[31:26] = 0x00000003U - // .. .. .. ==> MASK : 0xFC000000U VAL : 0x0C000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000124, 0xFFF00003U ,0x0C200003U), - // .. .. FINISH: DDR PLL INIT - // .. .. START: IO PLL INIT - // .. .. PLL_RES = 0xc - // .. .. ==> 0XF8000118[7:4] = 0x0000000CU - // .. .. ==> MASK : 0x000000F0U VAL : 0x000000C0U - // .. .. PLL_CP = 0x2 - // .. .. ==> 0XF8000118[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. LOCK_CNT = 0x1f4 - // .. .. ==> 0XF8000118[21:12] = 0x000001F4U - // .. .. ==> MASK : 0x003FF000U VAL : 0x001F4000U - // .. .. - EMIT_MASKWRITE(0XF8000118, 0x003FFFF0U ,0x001F42C0U), - // .. .. .. START: UPDATE FB_DIV - // .. .. .. PLL_FDIV = 0x14 - // .. .. .. ==> 0XF8000108[18:12] = 0x00000014U - // .. .. .. ==> MASK : 0x0007F000U VAL : 0x00014000U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x0007F000U ,0x00014000U), - // .. .. .. FINISH: UPDATE FB_DIV - // .. .. .. START: BY PASS PLL - // .. .. .. PLL_BYPASS_FORCE = 1 - // .. .. .. ==> 0XF8000108[4:4] = 0x00000001U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x00000010U ,0x00000010U), - // .. .. .. FINISH: BY PASS PLL - // .. .. .. START: ASSERT RESET - // .. .. .. PLL_RESET = 1 - // .. .. .. ==> 0XF8000108[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x00000001U ,0x00000001U), - // .. .. .. FINISH: ASSERT RESET - // .. .. .. START: DEASSERT RESET - // .. .. .. PLL_RESET = 0 - // .. .. .. ==> 0XF8000108[0:0] = 0x00000000U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x00000001U ,0x00000000U), - // .. .. .. FINISH: DEASSERT RESET - // .. .. .. START: CHECK PLL STATUS - // .. .. .. IO_PLL_LOCK = 1 - // .. .. .. ==> 0XF800010C[2:2] = 0x00000001U - // .. .. .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. .. .. - EMIT_MASKPOLL(0XF800010C, 0x00000004U), - // .. .. .. FINISH: CHECK PLL STATUS - // .. .. .. START: REMOVE PLL BY PASS - // .. .. .. PLL_BYPASS_FORCE = 0 - // .. .. .. ==> 0XF8000108[4:4] = 0x00000000U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x00000010U ,0x00000000U), - // .. .. .. FINISH: REMOVE PLL BY PASS - // .. .. FINISH: IO PLL INIT - // .. FINISH: PLL SLCR REGISTERS - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_clock_init_data_1_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: CLOCK CONTROL SLCR REGISTERS - // .. CLKACT = 0x1 - // .. ==> 0XF8000128[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. DIVISOR0 = 0x34 - // .. ==> 0XF8000128[13:8] = 0x00000034U - // .. ==> MASK : 0x00003F00U VAL : 0x00003400U - // .. DIVISOR1 = 0x2 - // .. ==> 0XF8000128[25:20] = 0x00000002U - // .. ==> MASK : 0x03F00000U VAL : 0x00200000U - // .. - EMIT_MASKWRITE(0XF8000128, 0x03F03F01U ,0x00203401U), - // .. CLKACT = 0x1 - // .. ==> 0XF8000138[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. SRCSEL = 0x0 - // .. ==> 0XF8000138[4:4] = 0x00000000U - // .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000138, 0x00000011U ,0x00000001U), - // .. CLKACT = 0x1 - // .. ==> 0XF8000140[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. SRCSEL = 0x0 - // .. ==> 0XF8000140[6:4] = 0x00000000U - // .. ==> MASK : 0x00000070U VAL : 0x00000000U - // .. DIVISOR = 0x8 - // .. ==> 0XF8000140[13:8] = 0x00000008U - // .. ==> MASK : 0x00003F00U VAL : 0x00000800U - // .. DIVISOR1 = 0x1 - // .. ==> 0XF8000140[25:20] = 0x00000001U - // .. ==> MASK : 0x03F00000U VAL : 0x00100000U - // .. - EMIT_MASKWRITE(0XF8000140, 0x03F03F71U ,0x00100801U), - // .. CLKACT = 0x1 - // .. ==> 0XF800014C[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. SRCSEL = 0x0 - // .. ==> 0XF800014C[5:4] = 0x00000000U - // .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. DIVISOR = 0x5 - // .. ==> 0XF800014C[13:8] = 0x00000005U - // .. ==> MASK : 0x00003F00U VAL : 0x00000500U - // .. - EMIT_MASKWRITE(0XF800014C, 0x00003F31U ,0x00000501U), - // .. CLKACT0 = 0x1 - // .. ==> 0XF8000150[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. CLKACT1 = 0x0 - // .. ==> 0XF8000150[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. SRCSEL = 0x0 - // .. ==> 0XF8000150[5:4] = 0x00000000U - // .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. DIVISOR = 0x14 - // .. ==> 0XF8000150[13:8] = 0x00000014U - // .. ==> MASK : 0x00003F00U VAL : 0x00001400U - // .. - EMIT_MASKWRITE(0XF8000150, 0x00003F33U ,0x00001401U), - // .. CLKACT0 = 0x1 - // .. ==> 0XF8000154[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. CLKACT1 = 0x1 - // .. ==> 0XF8000154[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. SRCSEL = 0x0 - // .. ==> 0XF8000154[5:4] = 0x00000000U - // .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. DIVISOR = 0xa - // .. ==> 0XF8000154[13:8] = 0x0000000AU - // .. ==> MASK : 0x00003F00U VAL : 0x00000A00U - // .. - EMIT_MASKWRITE(0XF8000154, 0x00003F33U ,0x00000A03U), - // .. .. START: TRACE CLOCK - // .. .. FINISH: TRACE CLOCK - // .. .. CLKACT = 0x1 - // .. .. ==> 0XF8000168[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. SRCSEL = 0x0 - // .. .. ==> 0XF8000168[5:4] = 0x00000000U - // .. .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. .. DIVISOR = 0x5 - // .. .. ==> 0XF8000168[13:8] = 0x00000005U - // .. .. ==> MASK : 0x00003F00U VAL : 0x00000500U - // .. .. - EMIT_MASKWRITE(0XF8000168, 0x00003F31U ,0x00000501U), - // .. .. SRCSEL = 0x0 - // .. .. ==> 0XF8000170[5:4] = 0x00000000U - // .. .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. .. DIVISOR0 = 0x5 - // .. .. ==> 0XF8000170[13:8] = 0x00000005U - // .. .. ==> MASK : 0x00003F00U VAL : 0x00000500U - // .. .. DIVISOR1 = 0x2 - // .. .. ==> 0XF8000170[25:20] = 0x00000002U - // .. .. ==> MASK : 0x03F00000U VAL : 0x00200000U - // .. .. - EMIT_MASKWRITE(0XF8000170, 0x03F03F30U ,0x00200500U), - // .. .. CLK_621_TRUE = 0x1 - // .. .. ==> 0XF80001C4[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. - EMIT_MASKWRITE(0XF80001C4, 0x00000001U ,0x00000001U), - // .. .. DMA_CPU_2XCLKACT = 0x1 - // .. .. ==> 0XF800012C[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. USB0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[2:2] = 0x00000001U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. .. USB1_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[3:3] = 0x00000001U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000008U - // .. .. GEM0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[6:6] = 0x00000001U - // .. .. ==> MASK : 0x00000040U VAL : 0x00000040U - // .. .. GEM1_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[7:7] = 0x00000000U - // .. .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. .. SDI0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[10:10] = 0x00000001U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000400U - // .. .. SDI1_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. SPI0_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[14:14] = 0x00000000U - // .. .. ==> MASK : 0x00004000U VAL : 0x00000000U - // .. .. SPI1_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[15:15] = 0x00000000U - // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U - // .. .. CAN0_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. CAN1_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. I2C0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[18:18] = 0x00000001U - // .. .. ==> MASK : 0x00040000U VAL : 0x00040000U - // .. .. I2C1_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[19:19] = 0x00000001U - // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. .. UART0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[20:20] = 0x00000001U - // .. .. ==> MASK : 0x00100000U VAL : 0x00100000U - // .. .. UART1_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[21:21] = 0x00000001U - // .. .. ==> MASK : 0x00200000U VAL : 0x00200000U - // .. .. GPIO_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[22:22] = 0x00000001U - // .. .. ==> MASK : 0x00400000U VAL : 0x00400000U - // .. .. LQSPI_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[23:23] = 0x00000001U - // .. .. ==> MASK : 0x00800000U VAL : 0x00800000U - // .. .. SMC_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[24:24] = 0x00000001U - // .. .. ==> MASK : 0x01000000U VAL : 0x01000000U - // .. .. - EMIT_MASKWRITE(0XF800012C, 0x01FFCCCDU ,0x01FC044DU), - // .. FINISH: CLOCK CONTROL SLCR REGISTERS - // .. START: THIS SHOULD BE BLANK - // .. FINISH: THIS SHOULD BE BLANK - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_ddr_init_data_1_0[] = { - // START: top - // .. START: DDR INITIALIZATION - // .. .. START: LOCK DDR - // .. .. reg_ddrc_soft_rstb = 0 - // .. .. ==> 0XF8006000[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_powerdown_en = 0x0 - // .. .. ==> 0XF8006000[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_ddrc_data_bus_width = 0x0 - // .. .. ==> 0XF8006000[3:2] = 0x00000000U - // .. .. ==> MASK : 0x0000000CU VAL : 0x00000000U - // .. .. reg_ddrc_burst8_refresh = 0x0 - // .. .. ==> 0XF8006000[6:4] = 0x00000000U - // .. .. ==> MASK : 0x00000070U VAL : 0x00000000U - // .. .. reg_ddrc_rdwr_idle_gap = 0x1 - // .. .. ==> 0XF8006000[13:7] = 0x00000001U - // .. .. ==> MASK : 0x00003F80U VAL : 0x00000080U - // .. .. reg_ddrc_dis_rd_bypass = 0x0 - // .. .. ==> 0XF8006000[14:14] = 0x00000000U - // .. .. ==> MASK : 0x00004000U VAL : 0x00000000U - // .. .. reg_ddrc_dis_act_bypass = 0x0 - // .. .. ==> 0XF8006000[15:15] = 0x00000000U - // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U - // .. .. reg_ddrc_dis_auto_refresh = 0x0 - // .. .. ==> 0XF8006000[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006000, 0x0001FFFFU ,0x00000080U), - // .. .. FINISH: LOCK DDR - // .. .. reg_ddrc_t_rfc_nom_x32 = 0x7f - // .. .. ==> 0XF8006004[11:0] = 0x0000007FU - // .. .. ==> MASK : 0x00000FFFU VAL : 0x0000007FU - // .. .. reg_ddrc_active_ranks = 0x1 - // .. .. ==> 0XF8006004[13:12] = 0x00000001U - // .. .. ==> MASK : 0x00003000U VAL : 0x00001000U - // .. .. reg_ddrc_addrmap_cs_bit0 = 0x0 - // .. .. ==> 0XF8006004[18:14] = 0x00000000U - // .. .. ==> MASK : 0x0007C000U VAL : 0x00000000U - // .. .. reg_ddrc_wr_odt_block = 0x1 - // .. .. ==> 0XF8006004[20:19] = 0x00000001U - // .. .. ==> MASK : 0x00180000U VAL : 0x00080000U - // .. .. reg_ddrc_diff_rank_rd_2cycle_gap = 0x0 - // .. .. ==> 0XF8006004[21:21] = 0x00000000U - // .. .. ==> MASK : 0x00200000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_cs_bit1 = 0x0 - // .. .. ==> 0XF8006004[26:22] = 0x00000000U - // .. .. ==> MASK : 0x07C00000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_open_bank = 0x0 - // .. .. ==> 0XF8006004[27:27] = 0x00000000U - // .. .. ==> MASK : 0x08000000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_4bank_ram = 0x0 - // .. .. ==> 0XF8006004[28:28] = 0x00000000U - // .. .. ==> MASK : 0x10000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006004, 0x1FFFFFFFU ,0x0008107FU), - // .. .. reg_ddrc_hpr_min_non_critical_x32 = 0xf - // .. .. ==> 0XF8006008[10:0] = 0x0000000FU - // .. .. ==> MASK : 0x000007FFU VAL : 0x0000000FU - // .. .. reg_ddrc_hpr_max_starve_x32 = 0xf - // .. .. ==> 0XF8006008[21:11] = 0x0000000FU - // .. .. ==> MASK : 0x003FF800U VAL : 0x00007800U - // .. .. reg_ddrc_hpr_xact_run_length = 0xf - // .. .. ==> 0XF8006008[25:22] = 0x0000000FU - // .. .. ==> MASK : 0x03C00000U VAL : 0x03C00000U - // .. .. - EMIT_MASKWRITE(0XF8006008, 0x03FFFFFFU ,0x03C0780FU), - // .. .. reg_ddrc_lpr_min_non_critical_x32 = 0x1 - // .. .. ==> 0XF800600C[10:0] = 0x00000001U - // .. .. ==> MASK : 0x000007FFU VAL : 0x00000001U - // .. .. reg_ddrc_lpr_max_starve_x32 = 0x2 - // .. .. ==> 0XF800600C[21:11] = 0x00000002U - // .. .. ==> MASK : 0x003FF800U VAL : 0x00001000U - // .. .. reg_ddrc_lpr_xact_run_length = 0x8 - // .. .. ==> 0XF800600C[25:22] = 0x00000008U - // .. .. ==> MASK : 0x03C00000U VAL : 0x02000000U - // .. .. - EMIT_MASKWRITE(0XF800600C, 0x03FFFFFFU ,0x02001001U), - // .. .. reg_ddrc_w_min_non_critical_x32 = 0x1 - // .. .. ==> 0XF8006010[10:0] = 0x00000001U - // .. .. ==> MASK : 0x000007FFU VAL : 0x00000001U - // .. .. reg_ddrc_w_xact_run_length = 0x8 - // .. .. ==> 0XF8006010[14:11] = 0x00000008U - // .. .. ==> MASK : 0x00007800U VAL : 0x00004000U - // .. .. reg_ddrc_w_max_starve_x32 = 0x2 - // .. .. ==> 0XF8006010[25:15] = 0x00000002U - // .. .. ==> MASK : 0x03FF8000U VAL : 0x00010000U - // .. .. - EMIT_MASKWRITE(0XF8006010, 0x03FFFFFFU ,0x00014001U), - // .. .. reg_ddrc_t_rc = 0x1a - // .. .. ==> 0XF8006014[5:0] = 0x0000001AU - // .. .. ==> MASK : 0x0000003FU VAL : 0x0000001AU - // .. .. reg_ddrc_t_rfc_min = 0x54 - // .. .. ==> 0XF8006014[13:6] = 0x00000054U - // .. .. ==> MASK : 0x00003FC0U VAL : 0x00001500U - // .. .. reg_ddrc_post_selfref_gap_x32 = 0x10 - // .. .. ==> 0XF8006014[20:14] = 0x00000010U - // .. .. ==> MASK : 0x001FC000U VAL : 0x00040000U - // .. .. - EMIT_MASKWRITE(0XF8006014, 0x001FFFFFU ,0x0004151AU), - // .. .. reg_ddrc_wr2pre = 0x12 - // .. .. ==> 0XF8006018[4:0] = 0x00000012U - // .. .. ==> MASK : 0x0000001FU VAL : 0x00000012U - // .. .. reg_ddrc_powerdown_to_x32 = 0x6 - // .. .. ==> 0XF8006018[9:5] = 0x00000006U - // .. .. ==> MASK : 0x000003E0U VAL : 0x000000C0U - // .. .. reg_ddrc_t_faw = 0x15 - // .. .. ==> 0XF8006018[15:10] = 0x00000015U - // .. .. ==> MASK : 0x0000FC00U VAL : 0x00005400U - // .. .. reg_ddrc_t_ras_max = 0x23 - // .. .. ==> 0XF8006018[21:16] = 0x00000023U - // .. .. ==> MASK : 0x003F0000U VAL : 0x00230000U - // .. .. reg_ddrc_t_ras_min = 0x13 - // .. .. ==> 0XF8006018[26:22] = 0x00000013U - // .. .. ==> MASK : 0x07C00000U VAL : 0x04C00000U - // .. .. reg_ddrc_t_cke = 0x4 - // .. .. ==> 0XF8006018[31:28] = 0x00000004U - // .. .. ==> MASK : 0xF0000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF8006018, 0xF7FFFFFFU ,0x44E354D2U), - // .. .. reg_ddrc_write_latency = 0x5 - // .. .. ==> 0XF800601C[4:0] = 0x00000005U - // .. .. ==> MASK : 0x0000001FU VAL : 0x00000005U - // .. .. reg_ddrc_rd2wr = 0x7 - // .. .. ==> 0XF800601C[9:5] = 0x00000007U - // .. .. ==> MASK : 0x000003E0U VAL : 0x000000E0U - // .. .. reg_ddrc_wr2rd = 0xe - // .. .. ==> 0XF800601C[14:10] = 0x0000000EU - // .. .. ==> MASK : 0x00007C00U VAL : 0x00003800U - // .. .. reg_ddrc_t_xp = 0x4 - // .. .. ==> 0XF800601C[19:15] = 0x00000004U - // .. .. ==> MASK : 0x000F8000U VAL : 0x00020000U - // .. .. reg_ddrc_pad_pd = 0x0 - // .. .. ==> 0XF800601C[22:20] = 0x00000000U - // .. .. ==> MASK : 0x00700000U VAL : 0x00000000U - // .. .. reg_ddrc_rd2pre = 0x4 - // .. .. ==> 0XF800601C[27:23] = 0x00000004U - // .. .. ==> MASK : 0x0F800000U VAL : 0x02000000U - // .. .. reg_ddrc_t_rcd = 0x7 - // .. .. ==> 0XF800601C[31:28] = 0x00000007U - // .. .. ==> MASK : 0xF0000000U VAL : 0x70000000U - // .. .. - EMIT_MASKWRITE(0XF800601C, 0xFFFFFFFFU ,0x720238E5U), - // .. .. reg_ddrc_t_ccd = 0x4 - // .. .. ==> 0XF8006020[4:2] = 0x00000004U - // .. .. ==> MASK : 0x0000001CU VAL : 0x00000010U - // .. .. reg_ddrc_t_rrd = 0x6 - // .. .. ==> 0XF8006020[7:5] = 0x00000006U - // .. .. ==> MASK : 0x000000E0U VAL : 0x000000C0U - // .. .. reg_ddrc_refresh_margin = 0x2 - // .. .. ==> 0XF8006020[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. reg_ddrc_t_rp = 0x7 - // .. .. ==> 0XF8006020[15:12] = 0x00000007U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00007000U - // .. .. reg_ddrc_refresh_to_x32 = 0x8 - // .. .. ==> 0XF8006020[20:16] = 0x00000008U - // .. .. ==> MASK : 0x001F0000U VAL : 0x00080000U - // .. .. reg_ddrc_sdram = 0x1 - // .. .. ==> 0XF8006020[21:21] = 0x00000001U - // .. .. ==> MASK : 0x00200000U VAL : 0x00200000U - // .. .. reg_ddrc_mobile = 0x0 - // .. .. ==> 0XF8006020[22:22] = 0x00000000U - // .. .. ==> MASK : 0x00400000U VAL : 0x00000000U - // .. .. reg_ddrc_clock_stop_en = 0x0 - // .. .. ==> 0XF8006020[23:23] = 0x00000000U - // .. .. ==> MASK : 0x00800000U VAL : 0x00000000U - // .. .. reg_ddrc_read_latency = 0x7 - // .. .. ==> 0XF8006020[28:24] = 0x00000007U - // .. .. ==> MASK : 0x1F000000U VAL : 0x07000000U - // .. .. reg_phy_mode_ddr1_ddr2 = 0x1 - // .. .. ==> 0XF8006020[29:29] = 0x00000001U - // .. .. ==> MASK : 0x20000000U VAL : 0x20000000U - // .. .. reg_ddrc_dis_pad_pd = 0x0 - // .. .. ==> 0XF8006020[30:30] = 0x00000000U - // .. .. ==> MASK : 0x40000000U VAL : 0x00000000U - // .. .. reg_ddrc_loopback = 0x0 - // .. .. ==> 0XF8006020[31:31] = 0x00000000U - // .. .. ==> MASK : 0x80000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006020, 0xFFFFFFFCU ,0x272872D0U), - // .. .. reg_ddrc_en_2t_timing_mode = 0x0 - // .. .. ==> 0XF8006024[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_prefer_write = 0x0 - // .. .. ==> 0XF8006024[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_ddrc_max_rank_rd = 0xf - // .. .. ==> 0XF8006024[5:2] = 0x0000000FU - // .. .. ==> MASK : 0x0000003CU VAL : 0x0000003CU - // .. .. reg_ddrc_mr_wr = 0x0 - // .. .. ==> 0XF8006024[6:6] = 0x00000000U - // .. .. ==> MASK : 0x00000040U VAL : 0x00000000U - // .. .. reg_ddrc_mr_addr = 0x0 - // .. .. ==> 0XF8006024[8:7] = 0x00000000U - // .. .. ==> MASK : 0x00000180U VAL : 0x00000000U - // .. .. reg_ddrc_mr_data = 0x0 - // .. .. ==> 0XF8006024[24:9] = 0x00000000U - // .. .. ==> MASK : 0x01FFFE00U VAL : 0x00000000U - // .. .. ddrc_reg_mr_wr_busy = 0x0 - // .. .. ==> 0XF8006024[25:25] = 0x00000000U - // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U - // .. .. reg_ddrc_mr_type = 0x0 - // .. .. ==> 0XF8006024[26:26] = 0x00000000U - // .. .. ==> MASK : 0x04000000U VAL : 0x00000000U - // .. .. reg_ddrc_mr_rdata_valid = 0x0 - // .. .. ==> 0XF8006024[27:27] = 0x00000000U - // .. .. ==> MASK : 0x08000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006024, 0x0FFFFFFFU ,0x0000003CU), - // .. .. reg_ddrc_final_wait_x32 = 0x7 - // .. .. ==> 0XF8006028[6:0] = 0x00000007U - // .. .. ==> MASK : 0x0000007FU VAL : 0x00000007U - // .. .. reg_ddrc_pre_ocd_x32 = 0x0 - // .. .. ==> 0XF8006028[10:7] = 0x00000000U - // .. .. ==> MASK : 0x00000780U VAL : 0x00000000U - // .. .. reg_ddrc_t_mrd = 0x4 - // .. .. ==> 0XF8006028[13:11] = 0x00000004U - // .. .. ==> MASK : 0x00003800U VAL : 0x00002000U - // .. .. - EMIT_MASKWRITE(0XF8006028, 0x00003FFFU ,0x00002007U), - // .. .. reg_ddrc_emr2 = 0x8 - // .. .. ==> 0XF800602C[15:0] = 0x00000008U - // .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000008U - // .. .. reg_ddrc_emr3 = 0x0 - // .. .. ==> 0XF800602C[31:16] = 0x00000000U - // .. .. ==> MASK : 0xFFFF0000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800602C, 0xFFFFFFFFU ,0x00000008U), - // .. .. reg_ddrc_mr = 0x930 - // .. .. ==> 0XF8006030[15:0] = 0x00000930U - // .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000930U - // .. .. reg_ddrc_emr = 0x4 - // .. .. ==> 0XF8006030[31:16] = 0x00000004U - // .. .. ==> MASK : 0xFFFF0000U VAL : 0x00040000U - // .. .. - EMIT_MASKWRITE(0XF8006030, 0xFFFFFFFFU ,0x00040930U), - // .. .. reg_ddrc_burst_rdwr = 0x4 - // .. .. ==> 0XF8006034[3:0] = 0x00000004U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000004U - // .. .. reg_ddrc_pre_cke_x1024 = 0x167 - // .. .. ==> 0XF8006034[13:4] = 0x00000167U - // .. .. ==> MASK : 0x00003FF0U VAL : 0x00001670U - // .. .. reg_ddrc_post_cke_x1024 = 0x1 - // .. .. ==> 0XF8006034[25:16] = 0x00000001U - // .. .. ==> MASK : 0x03FF0000U VAL : 0x00010000U - // .. .. reg_ddrc_burstchop = 0x0 - // .. .. ==> 0XF8006034[28:28] = 0x00000000U - // .. .. ==> MASK : 0x10000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006034, 0x13FF3FFFU ,0x00011674U), - // .. .. reg_ddrc_force_low_pri_n = 0x0 - // .. .. ==> 0XF8006038[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_dis_dq = 0x0 - // .. .. ==> 0XF8006038[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_debug_mode = 0x0 - // .. .. ==> 0XF8006038[6:6] = 0x00000000U - // .. .. ==> MASK : 0x00000040U VAL : 0x00000000U - // .. .. reg_phy_wr_level_start = 0x0 - // .. .. ==> 0XF8006038[7:7] = 0x00000000U - // .. .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. .. reg_phy_rd_level_start = 0x0 - // .. .. ==> 0XF8006038[8:8] = 0x00000000U - // .. .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. .. reg_phy_dq0_wait_t = 0x0 - // .. .. ==> 0XF8006038[12:9] = 0x00000000U - // .. .. ==> MASK : 0x00001E00U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006038, 0x00001FC3U ,0x00000000U), - // .. .. reg_ddrc_addrmap_bank_b0 = 0x7 - // .. .. ==> 0XF800603C[3:0] = 0x00000007U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000007U - // .. .. reg_ddrc_addrmap_bank_b1 = 0x7 - // .. .. ==> 0XF800603C[7:4] = 0x00000007U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000070U - // .. .. reg_ddrc_addrmap_bank_b2 = 0x7 - // .. .. ==> 0XF800603C[11:8] = 0x00000007U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000700U - // .. .. reg_ddrc_addrmap_col_b5 = 0x0 - // .. .. ==> 0XF800603C[15:12] = 0x00000000U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b6 = 0x0 - // .. .. ==> 0XF800603C[19:16] = 0x00000000U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800603C, 0x000FFFFFU ,0x00000777U), - // .. .. reg_ddrc_addrmap_col_b2 = 0x0 - // .. .. ==> 0XF8006040[3:0] = 0x00000000U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b3 = 0x0 - // .. .. ==> 0XF8006040[7:4] = 0x00000000U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b4 = 0x0 - // .. .. ==> 0XF8006040[11:8] = 0x00000000U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b7 = 0x0 - // .. .. ==> 0XF8006040[15:12] = 0x00000000U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b8 = 0x0 - // .. .. ==> 0XF8006040[19:16] = 0x00000000U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b9 = 0xf - // .. .. ==> 0XF8006040[23:20] = 0x0000000FU - // .. .. ==> MASK : 0x00F00000U VAL : 0x00F00000U - // .. .. reg_ddrc_addrmap_col_b10 = 0xf - // .. .. ==> 0XF8006040[27:24] = 0x0000000FU - // .. .. ==> MASK : 0x0F000000U VAL : 0x0F000000U - // .. .. reg_ddrc_addrmap_col_b11 = 0xf - // .. .. ==> 0XF8006040[31:28] = 0x0000000FU - // .. .. ==> MASK : 0xF0000000U VAL : 0xF0000000U - // .. .. - EMIT_MASKWRITE(0XF8006040, 0xFFFFFFFFU ,0xFFF00000U), - // .. .. reg_ddrc_addrmap_row_b0 = 0x6 - // .. .. ==> 0XF8006044[3:0] = 0x00000006U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000006U - // .. .. reg_ddrc_addrmap_row_b1 = 0x6 - // .. .. ==> 0XF8006044[7:4] = 0x00000006U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000060U - // .. .. reg_ddrc_addrmap_row_b2_11 = 0x6 - // .. .. ==> 0XF8006044[11:8] = 0x00000006U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000600U - // .. .. reg_ddrc_addrmap_row_b12 = 0x6 - // .. .. ==> 0XF8006044[15:12] = 0x00000006U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00006000U - // .. .. reg_ddrc_addrmap_row_b13 = 0x6 - // .. .. ==> 0XF8006044[19:16] = 0x00000006U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00060000U - // .. .. reg_ddrc_addrmap_row_b14 = 0xf - // .. .. ==> 0XF8006044[23:20] = 0x0000000FU - // .. .. ==> MASK : 0x00F00000U VAL : 0x00F00000U - // .. .. reg_ddrc_addrmap_row_b15 = 0xf - // .. .. ==> 0XF8006044[27:24] = 0x0000000FU - // .. .. ==> MASK : 0x0F000000U VAL : 0x0F000000U - // .. .. - EMIT_MASKWRITE(0XF8006044, 0x0FFFFFFFU ,0x0FF66666U), - // .. .. reg_ddrc_rank0_rd_odt = 0x0 - // .. .. ==> 0XF8006048[2:0] = 0x00000000U - // .. .. ==> MASK : 0x00000007U VAL : 0x00000000U - // .. .. reg_ddrc_rank0_wr_odt = 0x1 - // .. .. ==> 0XF8006048[5:3] = 0x00000001U - // .. .. ==> MASK : 0x00000038U VAL : 0x00000008U - // .. .. reg_ddrc_rank1_rd_odt = 0x1 - // .. .. ==> 0XF8006048[8:6] = 0x00000001U - // .. .. ==> MASK : 0x000001C0U VAL : 0x00000040U - // .. .. reg_ddrc_rank1_wr_odt = 0x1 - // .. .. ==> 0XF8006048[11:9] = 0x00000001U - // .. .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. .. reg_phy_rd_local_odt = 0x0 - // .. .. ==> 0XF8006048[13:12] = 0x00000000U - // .. .. ==> MASK : 0x00003000U VAL : 0x00000000U - // .. .. reg_phy_wr_local_odt = 0x3 - // .. .. ==> 0XF8006048[15:14] = 0x00000003U - // .. .. ==> MASK : 0x0000C000U VAL : 0x0000C000U - // .. .. reg_phy_idle_local_odt = 0x3 - // .. .. ==> 0XF8006048[17:16] = 0x00000003U - // .. .. ==> MASK : 0x00030000U VAL : 0x00030000U - // .. .. reg_ddrc_rank2_rd_odt = 0x0 - // .. .. ==> 0XF8006048[20:18] = 0x00000000U - // .. .. ==> MASK : 0x001C0000U VAL : 0x00000000U - // .. .. reg_ddrc_rank2_wr_odt = 0x0 - // .. .. ==> 0XF8006048[23:21] = 0x00000000U - // .. .. ==> MASK : 0x00E00000U VAL : 0x00000000U - // .. .. reg_ddrc_rank3_rd_odt = 0x0 - // .. .. ==> 0XF8006048[26:24] = 0x00000000U - // .. .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. .. reg_ddrc_rank3_wr_odt = 0x0 - // .. .. ==> 0XF8006048[29:27] = 0x00000000U - // .. .. ==> MASK : 0x38000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006048, 0x3FFFFFFFU ,0x0003C248U), - // .. .. reg_phy_rd_cmd_to_data = 0x0 - // .. .. ==> 0XF8006050[3:0] = 0x00000000U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U - // .. .. reg_phy_wr_cmd_to_data = 0x0 - // .. .. ==> 0XF8006050[7:4] = 0x00000000U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. .. reg_phy_rdc_we_to_re_delay = 0x8 - // .. .. ==> 0XF8006050[11:8] = 0x00000008U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000800U - // .. .. reg_phy_rdc_fifo_rst_disable = 0x0 - // .. .. ==> 0XF8006050[15:15] = 0x00000000U - // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U - // .. .. reg_phy_use_fixed_re = 0x1 - // .. .. ==> 0XF8006050[16:16] = 0x00000001U - // .. .. ==> MASK : 0x00010000U VAL : 0x00010000U - // .. .. reg_phy_rdc_fifo_rst_err_cnt_clr = 0x0 - // .. .. ==> 0XF8006050[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_phy_dis_phy_ctrl_rstn = 0x0 - // .. .. ==> 0XF8006050[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_phy_clk_stall_level = 0x0 - // .. .. ==> 0XF8006050[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_num_of_dq0 = 0x7 - // .. .. ==> 0XF8006050[27:24] = 0x00000007U - // .. .. ==> MASK : 0x0F000000U VAL : 0x07000000U - // .. .. reg_phy_wrlvl_num_of_dq0 = 0x7 - // .. .. ==> 0XF8006050[31:28] = 0x00000007U - // .. .. ==> MASK : 0xF0000000U VAL : 0x70000000U - // .. .. - EMIT_MASKWRITE(0XF8006050, 0xFF0F8FFFU ,0x77010800U), - // .. .. reg_ddrc_dll_calib_to_min_x1024 = 0x1 - // .. .. ==> 0XF8006058[7:0] = 0x00000001U - // .. .. ==> MASK : 0x000000FFU VAL : 0x00000001U - // .. .. reg_ddrc_dll_calib_to_max_x1024 = 0x1 - // .. .. ==> 0XF8006058[15:8] = 0x00000001U - // .. .. ==> MASK : 0x0000FF00U VAL : 0x00000100U - // .. .. reg_ddrc_dis_dll_calib = 0x0 - // .. .. ==> 0XF8006058[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006058, 0x0001FFFFU ,0x00000101U), - // .. .. reg_ddrc_rd_odt_delay = 0x3 - // .. .. ==> 0XF800605C[3:0] = 0x00000003U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000003U - // .. .. reg_ddrc_wr_odt_delay = 0x0 - // .. .. ==> 0XF800605C[7:4] = 0x00000000U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. .. reg_ddrc_rd_odt_hold = 0x0 - // .. .. ==> 0XF800605C[11:8] = 0x00000000U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000000U - // .. .. reg_ddrc_wr_odt_hold = 0x5 - // .. .. ==> 0XF800605C[15:12] = 0x00000005U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00005000U - // .. .. - EMIT_MASKWRITE(0XF800605C, 0x0000FFFFU ,0x00005003U), - // .. .. reg_ddrc_pageclose = 0x0 - // .. .. ==> 0XF8006060[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_lpr_num_entries = 0x1f - // .. .. ==> 0XF8006060[6:1] = 0x0000001FU - // .. .. ==> MASK : 0x0000007EU VAL : 0x0000003EU - // .. .. reg_ddrc_auto_pre_en = 0x0 - // .. .. ==> 0XF8006060[7:7] = 0x00000000U - // .. .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. .. reg_ddrc_refresh_update_level = 0x0 - // .. .. ==> 0XF8006060[8:8] = 0x00000000U - // .. .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. .. reg_ddrc_dis_wc = 0x0 - // .. .. ==> 0XF8006060[9:9] = 0x00000000U - // .. .. ==> MASK : 0x00000200U VAL : 0x00000000U - // .. .. reg_ddrc_dis_collision_page_opt = 0x0 - // .. .. ==> 0XF8006060[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_ddrc_selfref_en = 0x0 - // .. .. ==> 0XF8006060[12:12] = 0x00000000U - // .. .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006060, 0x000017FFU ,0x0000003EU), - // .. .. reg_ddrc_go2critical_hysteresis = 0x0 - // .. .. ==> 0XF8006064[12:5] = 0x00000000U - // .. .. ==> MASK : 0x00001FE0U VAL : 0x00000000U - // .. .. reg_arb_go2critical_en = 0x1 - // .. .. ==> 0XF8006064[17:17] = 0x00000001U - // .. .. ==> MASK : 0x00020000U VAL : 0x00020000U - // .. .. - EMIT_MASKWRITE(0XF8006064, 0x00021FE0U ,0x00020000U), - // .. .. reg_ddrc_wrlvl_ww = 0x41 - // .. .. ==> 0XF8006068[7:0] = 0x00000041U - // .. .. ==> MASK : 0x000000FFU VAL : 0x00000041U - // .. .. reg_ddrc_rdlvl_rr = 0x41 - // .. .. ==> 0XF8006068[15:8] = 0x00000041U - // .. .. ==> MASK : 0x0000FF00U VAL : 0x00004100U - // .. .. reg_ddrc_dfi_t_wlmrd = 0x28 - // .. .. ==> 0XF8006068[25:16] = 0x00000028U - // .. .. ==> MASK : 0x03FF0000U VAL : 0x00280000U - // .. .. - EMIT_MASKWRITE(0XF8006068, 0x03FFFFFFU ,0x00284141U), - // .. .. dfi_t_ctrlupd_interval_min_x1024 = 0x10 - // .. .. ==> 0XF800606C[7:0] = 0x00000010U - // .. .. ==> MASK : 0x000000FFU VAL : 0x00000010U - // .. .. dfi_t_ctrlupd_interval_max_x1024 = 0x16 - // .. .. ==> 0XF800606C[15:8] = 0x00000016U - // .. .. ==> MASK : 0x0000FF00U VAL : 0x00001600U - // .. .. - EMIT_MASKWRITE(0XF800606C, 0x0000FFFFU ,0x00001610U), - // .. .. refresh_timer0_start_value_x32 = 0x0 - // .. .. ==> 0XF80060A0[11:0] = 0x00000000U - // .. .. ==> MASK : 0x00000FFFU VAL : 0x00000000U - // .. .. refresh_timer1_start_value_x32 = 0x8 - // .. .. ==> 0XF80060A0[23:12] = 0x00000008U - // .. .. ==> MASK : 0x00FFF000U VAL : 0x00008000U - // .. .. - EMIT_MASKWRITE(0XF80060A0, 0x00FFFFFFU ,0x00008000U), - // .. .. reg_ddrc_dis_auto_zq = 0x0 - // .. .. ==> 0XF80060A4[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_ddr3 = 0x1 - // .. .. ==> 0XF80060A4[1:1] = 0x00000001U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. .. reg_ddrc_t_mod = 0x200 - // .. .. ==> 0XF80060A4[11:2] = 0x00000200U - // .. .. ==> MASK : 0x00000FFCU VAL : 0x00000800U - // .. .. reg_ddrc_t_zq_long_nop = 0x200 - // .. .. ==> 0XF80060A4[21:12] = 0x00000200U - // .. .. ==> MASK : 0x003FF000U VAL : 0x00200000U - // .. .. reg_ddrc_t_zq_short_nop = 0x40 - // .. .. ==> 0XF80060A4[31:22] = 0x00000040U - // .. .. ==> MASK : 0xFFC00000U VAL : 0x10000000U - // .. .. - EMIT_MASKWRITE(0XF80060A4, 0xFFFFFFFFU ,0x10200802U), - // .. .. t_zq_short_interval_x1024 = 0xc845 - // .. .. ==> 0XF80060A8[19:0] = 0x0000C845U - // .. .. ==> MASK : 0x000FFFFFU VAL : 0x0000C845U - // .. .. dram_rstn_x1024 = 0x67 - // .. .. ==> 0XF80060A8[27:20] = 0x00000067U - // .. .. ==> MASK : 0x0FF00000U VAL : 0x06700000U - // .. .. - EMIT_MASKWRITE(0XF80060A8, 0x0FFFFFFFU ,0x0670C845U), - // .. .. deeppowerdown_en = 0x0 - // .. .. ==> 0XF80060AC[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. deeppowerdown_to_x1024 = 0xff - // .. .. ==> 0XF80060AC[8:1] = 0x000000FFU - // .. .. ==> MASK : 0x000001FEU VAL : 0x000001FEU - // .. .. - EMIT_MASKWRITE(0XF80060AC, 0x000001FFU ,0x000001FEU), - // .. .. dfi_wrlvl_max_x1024 = 0xfff - // .. .. ==> 0XF80060B0[11:0] = 0x00000FFFU - // .. .. ==> MASK : 0x00000FFFU VAL : 0x00000FFFU - // .. .. dfi_rdlvl_max_x1024 = 0xfff - // .. .. ==> 0XF80060B0[23:12] = 0x00000FFFU - // .. .. ==> MASK : 0x00FFF000U VAL : 0x00FFF000U - // .. .. ddrc_reg_twrlvl_max_error = 0x0 - // .. .. ==> 0XF80060B0[24:24] = 0x00000000U - // .. .. ==> MASK : 0x01000000U VAL : 0x00000000U - // .. .. ddrc_reg_trdlvl_max_error = 0x0 - // .. .. ==> 0XF80060B0[25:25] = 0x00000000U - // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U - // .. .. reg_ddrc_dfi_wr_level_en = 0x1 - // .. .. ==> 0XF80060B0[26:26] = 0x00000001U - // .. .. ==> MASK : 0x04000000U VAL : 0x04000000U - // .. .. reg_ddrc_dfi_rd_dqs_gate_level = 0x1 - // .. .. ==> 0XF80060B0[27:27] = 0x00000001U - // .. .. ==> MASK : 0x08000000U VAL : 0x08000000U - // .. .. reg_ddrc_dfi_rd_data_eye_train = 0x1 - // .. .. ==> 0XF80060B0[28:28] = 0x00000001U - // .. .. ==> MASK : 0x10000000U VAL : 0x10000000U - // .. .. - EMIT_MASKWRITE(0XF80060B0, 0x1FFFFFFFU ,0x1CFFFFFFU), - // .. .. reg_ddrc_2t_delay = 0x0 - // .. .. ==> 0XF80060B4[8:0] = 0x00000000U - // .. .. ==> MASK : 0x000001FFU VAL : 0x00000000U - // .. .. reg_ddrc_skip_ocd = 0x1 - // .. .. ==> 0XF80060B4[9:9] = 0x00000001U - // .. .. ==> MASK : 0x00000200U VAL : 0x00000200U - // .. .. reg_ddrc_dis_pre_bypass = 0x0 - // .. .. ==> 0XF80060B4[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060B4, 0x000007FFU ,0x00000200U), - // .. .. reg_ddrc_dfi_t_rddata_en = 0x6 - // .. .. ==> 0XF80060B8[4:0] = 0x00000006U - // .. .. ==> MASK : 0x0000001FU VAL : 0x00000006U - // .. .. reg_ddrc_dfi_t_ctrlup_min = 0x3 - // .. .. ==> 0XF80060B8[14:5] = 0x00000003U - // .. .. ==> MASK : 0x00007FE0U VAL : 0x00000060U - // .. .. reg_ddrc_dfi_t_ctrlup_max = 0x40 - // .. .. ==> 0XF80060B8[24:15] = 0x00000040U - // .. .. ==> MASK : 0x01FF8000U VAL : 0x00200000U - // .. .. - EMIT_MASKWRITE(0XF80060B8, 0x01FFFFFFU ,0x00200066U), - // .. .. Clear_Uncorrectable_DRAM_ECC_error = 0x0 - // .. .. ==> 0XF80060C4[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. Clear_Correctable_DRAM_ECC_error = 0x0 - // .. .. ==> 0XF80060C4[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060C4, 0x00000003U ,0x00000000U), - // .. .. CORR_ECC_LOG_VALID = 0x0 - // .. .. ==> 0XF80060C8[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. ECC_CORRECTED_BIT_NUM = 0x0 - // .. .. ==> 0XF80060C8[7:1] = 0x00000000U - // .. .. ==> MASK : 0x000000FEU VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060C8, 0x000000FFU ,0x00000000U), - // .. .. UNCORR_ECC_LOG_VALID = 0x0 - // .. .. ==> 0XF80060DC[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060DC, 0x00000001U ,0x00000000U), - // .. .. STAT_NUM_CORR_ERR = 0x0 - // .. .. ==> 0XF80060F0[15:8] = 0x00000000U - // .. .. ==> MASK : 0x0000FF00U VAL : 0x00000000U - // .. .. STAT_NUM_UNCORR_ERR = 0x0 - // .. .. ==> 0XF80060F0[7:0] = 0x00000000U - // .. .. ==> MASK : 0x000000FFU VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060F0, 0x0000FFFFU ,0x00000000U), - // .. .. reg_ddrc_ecc_mode = 0x0 - // .. .. ==> 0XF80060F4[2:0] = 0x00000000U - // .. .. ==> MASK : 0x00000007U VAL : 0x00000000U - // .. .. reg_ddrc_dis_scrub = 0x1 - // .. .. ==> 0XF80060F4[3:3] = 0x00000001U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000008U - // .. .. - EMIT_MASKWRITE(0XF80060F4, 0x0000000FU ,0x00000008U), - // .. .. reg_phy_dif_on = 0x0 - // .. .. ==> 0XF8006114[3:0] = 0x00000000U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U - // .. .. reg_phy_dif_off = 0x0 - // .. .. ==> 0XF8006114[7:4] = 0x00000000U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006114, 0x000000FFU ,0x00000000U), - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF8006118[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006118[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF8006118[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006118[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_tx = 0x0 - // .. .. ==> 0XF8006118[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_rx = 0x0 - // .. .. ==> 0XF8006118[5:5] = 0x00000000U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF8006118[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF8006118[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF8006118[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF8006118, 0x7FFFFFFFU ,0x40000001U), - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF800611C[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF800611C[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF800611C[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF800611C[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_tx = 0x0 - // .. .. ==> 0XF800611C[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_rx = 0x0 - // .. .. ==> 0XF800611C[5:5] = 0x00000000U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF800611C[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF800611C[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF800611C[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF800611C, 0x7FFFFFFFU ,0x40000001U), - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF8006120[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006120[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF8006120[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006120[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_tx = 0x0 - // .. .. ==> 0XF8006120[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_rx = 0x0 - // .. .. ==> 0XF8006120[5:5] = 0x00000000U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF8006120[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF8006120[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF8006120[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF8006120, 0x7FFFFFFFU ,0x40000001U), - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF8006124[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006124[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF8006124[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006124[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_tx = 0x0 - // .. .. ==> 0XF8006124[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_rx = 0x0 - // .. .. ==> 0XF8006124[5:5] = 0x00000000U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF8006124[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF8006124[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF8006124[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF8006124, 0x7FFFFFFFU ,0x40000001U), - // .. .. reg_phy_wrlvl_init_ratio = 0x0 - // .. .. ==> 0XF800612C[9:0] = 0x00000000U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U - // .. .. reg_phy_gatelvl_init_ratio = 0x8f - // .. .. ==> 0XF800612C[19:10] = 0x0000008FU - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00023C00U - // .. .. - EMIT_MASKWRITE(0XF800612C, 0x000FFFFFU ,0x00023C00U), - // .. .. reg_phy_wrlvl_init_ratio = 0x0 - // .. .. ==> 0XF8006130[9:0] = 0x00000000U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U - // .. .. reg_phy_gatelvl_init_ratio = 0x8a - // .. .. ==> 0XF8006130[19:10] = 0x0000008AU - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00022800U - // .. .. - EMIT_MASKWRITE(0XF8006130, 0x000FFFFFU ,0x00022800U), - // .. .. reg_phy_wrlvl_init_ratio = 0x0 - // .. .. ==> 0XF8006134[9:0] = 0x00000000U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U - // .. .. reg_phy_gatelvl_init_ratio = 0x8b - // .. .. ==> 0XF8006134[19:10] = 0x0000008BU - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00022C00U - // .. .. - EMIT_MASKWRITE(0XF8006134, 0x000FFFFFU ,0x00022C00U), - // .. .. reg_phy_wrlvl_init_ratio = 0x0 - // .. .. ==> 0XF8006138[9:0] = 0x00000000U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U - // .. .. reg_phy_gatelvl_init_ratio = 0x92 - // .. .. ==> 0XF8006138[19:10] = 0x00000092U - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00024800U - // .. .. - EMIT_MASKWRITE(0XF8006138, 0x000FFFFFU ,0x00024800U), - // .. .. reg_phy_rd_dqs_slave_ratio = 0x35 - // .. .. ==> 0XF8006140[9:0] = 0x00000035U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U - // .. .. reg_phy_rd_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006140[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_rd_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006140[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006140, 0x000FFFFFU ,0x00000035U), - // .. .. reg_phy_rd_dqs_slave_ratio = 0x35 - // .. .. ==> 0XF8006144[9:0] = 0x00000035U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U - // .. .. reg_phy_rd_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006144[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_rd_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006144[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006144, 0x000FFFFFU ,0x00000035U), - // .. .. reg_phy_rd_dqs_slave_ratio = 0x35 - // .. .. ==> 0XF8006148[9:0] = 0x00000035U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U - // .. .. reg_phy_rd_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006148[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_rd_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006148[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006148, 0x000FFFFFU ,0x00000035U), - // .. .. reg_phy_rd_dqs_slave_ratio = 0x35 - // .. .. ==> 0XF800614C[9:0] = 0x00000035U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U - // .. .. reg_phy_rd_dqs_slave_force = 0x0 - // .. .. ==> 0XF800614C[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_rd_dqs_slave_delay = 0x0 - // .. .. ==> 0XF800614C[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800614C, 0x000FFFFFU ,0x00000035U), - // .. .. reg_phy_wr_dqs_slave_ratio = 0x77 - // .. .. ==> 0XF8006154[9:0] = 0x00000077U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000077U - // .. .. reg_phy_wr_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006154[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006154[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006154, 0x000FFFFFU ,0x00000077U), - // .. .. reg_phy_wr_dqs_slave_ratio = 0x7c - // .. .. ==> 0XF8006158[9:0] = 0x0000007CU - // .. .. ==> MASK : 0x000003FFU VAL : 0x0000007CU - // .. .. reg_phy_wr_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006158[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006158[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006158, 0x000FFFFFU ,0x0000007CU), - // .. .. reg_phy_wr_dqs_slave_ratio = 0x7c - // .. .. ==> 0XF800615C[9:0] = 0x0000007CU - // .. .. ==> MASK : 0x000003FFU VAL : 0x0000007CU - // .. .. reg_phy_wr_dqs_slave_force = 0x0 - // .. .. ==> 0XF800615C[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_dqs_slave_delay = 0x0 - // .. .. ==> 0XF800615C[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800615C, 0x000FFFFFU ,0x0000007CU), - // .. .. reg_phy_wr_dqs_slave_ratio = 0x75 - // .. .. ==> 0XF8006160[9:0] = 0x00000075U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000075U - // .. .. reg_phy_wr_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006160[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006160[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006160, 0x000FFFFFU ,0x00000075U), - // .. .. reg_phy_fifo_we_slave_ratio = 0xe4 - // .. .. ==> 0XF8006168[10:0] = 0x000000E4U - // .. .. ==> MASK : 0x000007FFU VAL : 0x000000E4U - // .. .. reg_phy_fifo_we_in_force = 0x0 - // .. .. ==> 0XF8006168[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. reg_phy_fifo_we_in_delay = 0x0 - // .. .. ==> 0XF8006168[20:12] = 0x00000000U - // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006168, 0x001FFFFFU ,0x000000E4U), - // .. .. reg_phy_fifo_we_slave_ratio = 0xdf - // .. .. ==> 0XF800616C[10:0] = 0x000000DFU - // .. .. ==> MASK : 0x000007FFU VAL : 0x000000DFU - // .. .. reg_phy_fifo_we_in_force = 0x0 - // .. .. ==> 0XF800616C[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. reg_phy_fifo_we_in_delay = 0x0 - // .. .. ==> 0XF800616C[20:12] = 0x00000000U - // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800616C, 0x001FFFFFU ,0x000000DFU), - // .. .. reg_phy_fifo_we_slave_ratio = 0xe0 - // .. .. ==> 0XF8006170[10:0] = 0x000000E0U - // .. .. ==> MASK : 0x000007FFU VAL : 0x000000E0U - // .. .. reg_phy_fifo_we_in_force = 0x0 - // .. .. ==> 0XF8006170[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. reg_phy_fifo_we_in_delay = 0x0 - // .. .. ==> 0XF8006170[20:12] = 0x00000000U - // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006170, 0x001FFFFFU ,0x000000E0U), - // .. .. reg_phy_fifo_we_slave_ratio = 0xe7 - // .. .. ==> 0XF8006174[10:0] = 0x000000E7U - // .. .. ==> MASK : 0x000007FFU VAL : 0x000000E7U - // .. .. reg_phy_fifo_we_in_force = 0x0 - // .. .. ==> 0XF8006174[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. reg_phy_fifo_we_in_delay = 0x0 - // .. .. ==> 0XF8006174[20:12] = 0x00000000U - // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006174, 0x001FFFFFU ,0x000000E7U), - // .. .. reg_phy_wr_data_slave_ratio = 0xb7 - // .. .. ==> 0XF800617C[9:0] = 0x000000B7U - // .. .. ==> MASK : 0x000003FFU VAL : 0x000000B7U - // .. .. reg_phy_wr_data_slave_force = 0x0 - // .. .. ==> 0XF800617C[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_data_slave_delay = 0x0 - // .. .. ==> 0XF800617C[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800617C, 0x000FFFFFU ,0x000000B7U), - // .. .. reg_phy_wr_data_slave_ratio = 0xbc - // .. .. ==> 0XF8006180[9:0] = 0x000000BCU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000000BCU - // .. .. reg_phy_wr_data_slave_force = 0x0 - // .. .. ==> 0XF8006180[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_data_slave_delay = 0x0 - // .. .. ==> 0XF8006180[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006180, 0x000FFFFFU ,0x000000BCU), - // .. .. reg_phy_wr_data_slave_ratio = 0xbc - // .. .. ==> 0XF8006184[9:0] = 0x000000BCU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000000BCU - // .. .. reg_phy_wr_data_slave_force = 0x0 - // .. .. ==> 0XF8006184[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_data_slave_delay = 0x0 - // .. .. ==> 0XF8006184[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006184, 0x000FFFFFU ,0x000000BCU), - // .. .. reg_phy_wr_data_slave_ratio = 0xb5 - // .. .. ==> 0XF8006188[9:0] = 0x000000B5U - // .. .. ==> MASK : 0x000003FFU VAL : 0x000000B5U - // .. .. reg_phy_wr_data_slave_force = 0x0 - // .. .. ==> 0XF8006188[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_data_slave_delay = 0x0 - // .. .. ==> 0XF8006188[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006188, 0x000FFFFFU ,0x000000B5U), - // .. .. reg_phy_loopback = 0x0 - // .. .. ==> 0XF8006190[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_phy_bl2 = 0x0 - // .. .. ==> 0XF8006190[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_at_spd_atpg = 0x0 - // .. .. ==> 0XF8006190[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_bist_enable = 0x0 - // .. .. ==> 0XF8006190[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_bist_force_err = 0x0 - // .. .. ==> 0XF8006190[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reg_phy_bist_mode = 0x0 - // .. .. ==> 0XF8006190[6:5] = 0x00000000U - // .. .. ==> MASK : 0x00000060U VAL : 0x00000000U - // .. .. reg_phy_invert_clkout = 0x1 - // .. .. ==> 0XF8006190[7:7] = 0x00000001U - // .. .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. .. reg_phy_all_dq_mpr_rd_resp = 0x0 - // .. .. ==> 0XF8006190[8:8] = 0x00000000U - // .. .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. .. reg_phy_sel_logic = 0x0 - // .. .. ==> 0XF8006190[9:9] = 0x00000000U - // .. .. ==> MASK : 0x00000200U VAL : 0x00000000U - // .. .. reg_phy_ctrl_slave_ratio = 0x100 - // .. .. ==> 0XF8006190[19:10] = 0x00000100U - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00040000U - // .. .. reg_phy_ctrl_slave_force = 0x0 - // .. .. ==> 0XF8006190[20:20] = 0x00000000U - // .. .. ==> MASK : 0x00100000U VAL : 0x00000000U - // .. .. reg_phy_ctrl_slave_delay = 0x0 - // .. .. ==> 0XF8006190[27:21] = 0x00000000U - // .. .. ==> MASK : 0x0FE00000U VAL : 0x00000000U - // .. .. reg_phy_use_rank0_delays = 0x1 - // .. .. ==> 0XF8006190[28:28] = 0x00000001U - // .. .. ==> MASK : 0x10000000U VAL : 0x10000000U - // .. .. reg_phy_lpddr = 0x0 - // .. .. ==> 0XF8006190[29:29] = 0x00000000U - // .. .. ==> MASK : 0x20000000U VAL : 0x00000000U - // .. .. reg_phy_cmd_latency = 0x0 - // .. .. ==> 0XF8006190[30:30] = 0x00000000U - // .. .. ==> MASK : 0x40000000U VAL : 0x00000000U - // .. .. reg_phy_int_lpbk = 0x0 - // .. .. ==> 0XF8006190[31:31] = 0x00000000U - // .. .. ==> MASK : 0x80000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006190, 0xFFFFFFFFU ,0x10040080U), - // .. .. reg_phy_wr_rl_delay = 0x2 - // .. .. ==> 0XF8006194[4:0] = 0x00000002U - // .. .. ==> MASK : 0x0000001FU VAL : 0x00000002U - // .. .. reg_phy_rd_rl_delay = 0x4 - // .. .. ==> 0XF8006194[9:5] = 0x00000004U - // .. .. ==> MASK : 0x000003E0U VAL : 0x00000080U - // .. .. reg_phy_dll_lock_diff = 0xf - // .. .. ==> 0XF8006194[13:10] = 0x0000000FU - // .. .. ==> MASK : 0x00003C00U VAL : 0x00003C00U - // .. .. reg_phy_use_wr_level = 0x1 - // .. .. ==> 0XF8006194[14:14] = 0x00000001U - // .. .. ==> MASK : 0x00004000U VAL : 0x00004000U - // .. .. reg_phy_use_rd_dqs_gate_level = 0x1 - // .. .. ==> 0XF8006194[15:15] = 0x00000001U - // .. .. ==> MASK : 0x00008000U VAL : 0x00008000U - // .. .. reg_phy_use_rd_data_eye_level = 0x1 - // .. .. ==> 0XF8006194[16:16] = 0x00000001U - // .. .. ==> MASK : 0x00010000U VAL : 0x00010000U - // .. .. reg_phy_dis_calib_rst = 0x0 - // .. .. ==> 0XF8006194[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_phy_ctrl_slave_delay = 0x0 - // .. .. ==> 0XF8006194[19:18] = 0x00000000U - // .. .. ==> MASK : 0x000C0000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006194, 0x000FFFFFU ,0x0001FC82U), - // .. .. reg_arb_page_addr_mask = 0x0 - // .. .. ==> 0XF8006204[31:0] = 0x00000000U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006204, 0xFFFFFFFFU ,0x00000000U), - // .. .. reg_arb_pri_wr_portn = 0x3ff - // .. .. ==> 0XF8006208[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_wr_portn = 0x0 - // .. .. ==> 0XF8006208[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_wr_portn = 0x0 - // .. .. ==> 0XF8006208[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_wr_portn = 0x0 - // .. .. ==> 0XF8006208[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_dis_rmw_portn = 0x1 - // .. .. ==> 0XF8006208[19:19] = 0x00000001U - // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. .. - EMIT_MASKWRITE(0XF8006208, 0x000F03FFU ,0x000803FFU), - // .. .. reg_arb_pri_wr_portn = 0x3ff - // .. .. ==> 0XF800620C[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_wr_portn = 0x0 - // .. .. ==> 0XF800620C[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_wr_portn = 0x0 - // .. .. ==> 0XF800620C[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_wr_portn = 0x0 - // .. .. ==> 0XF800620C[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_dis_rmw_portn = 0x1 - // .. .. ==> 0XF800620C[19:19] = 0x00000001U - // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. .. - EMIT_MASKWRITE(0XF800620C, 0x000F03FFU ,0x000803FFU), - // .. .. reg_arb_pri_wr_portn = 0x3ff - // .. .. ==> 0XF8006210[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_wr_portn = 0x0 - // .. .. ==> 0XF8006210[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_wr_portn = 0x0 - // .. .. ==> 0XF8006210[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_wr_portn = 0x0 - // .. .. ==> 0XF8006210[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_dis_rmw_portn = 0x1 - // .. .. ==> 0XF8006210[19:19] = 0x00000001U - // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. .. - EMIT_MASKWRITE(0XF8006210, 0x000F03FFU ,0x000803FFU), - // .. .. reg_arb_pri_wr_portn = 0x3ff - // .. .. ==> 0XF8006214[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_wr_portn = 0x0 - // .. .. ==> 0XF8006214[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_wr_portn = 0x0 - // .. .. ==> 0XF8006214[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_wr_portn = 0x0 - // .. .. ==> 0XF8006214[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_dis_rmw_portn = 0x1 - // .. .. ==> 0XF8006214[19:19] = 0x00000001U - // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. .. - EMIT_MASKWRITE(0XF8006214, 0x000F03FFU ,0x000803FFU), - // .. .. reg_arb_pri_rd_portn = 0x3ff - // .. .. ==> 0XF8006218[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_rd_portn = 0x0 - // .. .. ==> 0XF8006218[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_rd_portn = 0x0 - // .. .. ==> 0XF8006218[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_rd_portn = 0x0 - // .. .. ==> 0XF8006218[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_set_hpr_rd_portn = 0x0 - // .. .. ==> 0XF8006218[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006218, 0x000F03FFU ,0x000003FFU), - // .. .. reg_arb_pri_rd_portn = 0x3ff - // .. .. ==> 0XF800621C[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_rd_portn = 0x0 - // .. .. ==> 0XF800621C[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_rd_portn = 0x0 - // .. .. ==> 0XF800621C[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_rd_portn = 0x0 - // .. .. ==> 0XF800621C[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_set_hpr_rd_portn = 0x0 - // .. .. ==> 0XF800621C[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800621C, 0x000F03FFU ,0x000003FFU), - // .. .. reg_arb_pri_rd_portn = 0x3ff - // .. .. ==> 0XF8006220[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_rd_portn = 0x0 - // .. .. ==> 0XF8006220[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_rd_portn = 0x0 - // .. .. ==> 0XF8006220[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_rd_portn = 0x0 - // .. .. ==> 0XF8006220[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_set_hpr_rd_portn = 0x0 - // .. .. ==> 0XF8006220[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006220, 0x000F03FFU ,0x000003FFU), - // .. .. reg_arb_pri_rd_portn = 0x3ff - // .. .. ==> 0XF8006224[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_rd_portn = 0x0 - // .. .. ==> 0XF8006224[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_rd_portn = 0x0 - // .. .. ==> 0XF8006224[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_rd_portn = 0x0 - // .. .. ==> 0XF8006224[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_set_hpr_rd_portn = 0x0 - // .. .. ==> 0XF8006224[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006224, 0x000F03FFU ,0x000003FFU), - // .. .. reg_ddrc_lpddr2 = 0x0 - // .. .. ==> 0XF80062A8[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_per_bank_refresh = 0x0 - // .. .. ==> 0XF80062A8[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_ddrc_derate_enable = 0x0 - // .. .. ==> 0XF80062A8[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_ddrc_mr4_margin = 0x0 - // .. .. ==> 0XF80062A8[11:4] = 0x00000000U - // .. .. ==> MASK : 0x00000FF0U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80062A8, 0x00000FF7U ,0x00000000U), - // .. .. reg_ddrc_mr4_read_interval = 0x0 - // .. .. ==> 0XF80062AC[31:0] = 0x00000000U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80062AC, 0xFFFFFFFFU ,0x00000000U), - // .. .. reg_ddrc_min_stable_clock_x1 = 0x5 - // .. .. ==> 0XF80062B0[3:0] = 0x00000005U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000005U - // .. .. reg_ddrc_idle_after_reset_x32 = 0x12 - // .. .. ==> 0XF80062B0[11:4] = 0x00000012U - // .. .. ==> MASK : 0x00000FF0U VAL : 0x00000120U - // .. .. reg_ddrc_t_mrw = 0x5 - // .. .. ==> 0XF80062B0[21:12] = 0x00000005U - // .. .. ==> MASK : 0x003FF000U VAL : 0x00005000U - // .. .. - EMIT_MASKWRITE(0XF80062B0, 0x003FFFFFU ,0x00005125U), - // .. .. reg_ddrc_max_auto_init_x1024 = 0xa6 - // .. .. ==> 0XF80062B4[7:0] = 0x000000A6U - // .. .. ==> MASK : 0x000000FFU VAL : 0x000000A6U - // .. .. reg_ddrc_dev_zqinit_x32 = 0x12 - // .. .. ==> 0XF80062B4[17:8] = 0x00000012U - // .. .. ==> MASK : 0x0003FF00U VAL : 0x00001200U - // .. .. - EMIT_MASKWRITE(0XF80062B4, 0x0003FFFFU ,0x000012A6U), - // .. .. START: POLL ON DCI STATUS - // .. .. DONE = 1 - // .. .. ==> 0XF8000B74[13:13] = 0x00000001U - // .. .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. .. - EMIT_MASKPOLL(0XF8000B74, 0x00002000U), - // .. .. FINISH: POLL ON DCI STATUS - // .. .. START: UNLOCK DDR - // .. .. reg_ddrc_soft_rstb = 0x1 - // .. .. ==> 0XF8006000[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_ddrc_powerdown_en = 0x0 - // .. .. ==> 0XF8006000[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_ddrc_data_bus_width = 0x0 - // .. .. ==> 0XF8006000[3:2] = 0x00000000U - // .. .. ==> MASK : 0x0000000CU VAL : 0x00000000U - // .. .. reg_ddrc_burst8_refresh = 0x0 - // .. .. ==> 0XF8006000[6:4] = 0x00000000U - // .. .. ==> MASK : 0x00000070U VAL : 0x00000000U - // .. .. reg_ddrc_rdwr_idle_gap = 1 - // .. .. ==> 0XF8006000[13:7] = 0x00000001U - // .. .. ==> MASK : 0x00003F80U VAL : 0x00000080U - // .. .. reg_ddrc_dis_rd_bypass = 0x0 - // .. .. ==> 0XF8006000[14:14] = 0x00000000U - // .. .. ==> MASK : 0x00004000U VAL : 0x00000000U - // .. .. reg_ddrc_dis_act_bypass = 0x0 - // .. .. ==> 0XF8006000[15:15] = 0x00000000U - // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U - // .. .. reg_ddrc_dis_auto_refresh = 0x0 - // .. .. ==> 0XF8006000[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006000, 0x0001FFFFU ,0x00000081U), - // .. .. FINISH: UNLOCK DDR - // .. .. START: CHECK DDR STATUS - // .. .. ddrc_reg_operating_mode = 1 - // .. .. ==> 0XF8006054[2:0] = 0x00000001U - // .. .. ==> MASK : 0x00000007U VAL : 0x00000001U - // .. .. - EMIT_MASKPOLL(0XF8006054, 0x00000007U), - // .. .. FINISH: CHECK DDR STATUS - // .. FINISH: DDR INITIALIZATION - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_mio_init_data_1_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: OCM REMAPPING - // .. VREF_EN = 0x1 - // .. ==> 0XF8000B00[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. VREF_PULLUP_EN = 0x0 - // .. ==> 0XF8000B00[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. CLK_PULLUP_EN = 0x0 - // .. ==> 0XF8000B00[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. SRSTN_PULLUP_EN = 0x0 - // .. ==> 0XF8000B00[9:9] = 0x00000000U - // .. ==> MASK : 0x00000200U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B00, 0x00000303U ,0x00000001U), - // .. FINISH: OCM REMAPPING - // .. START: DDRIOB SETTINGS - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B40[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x0 - // .. ==> 0XF8000B40[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B40[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x0 - // .. ==> 0XF8000B40[4:4] = 0x00000000U - // .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. DCR_TYPE = 0x0 - // .. ==> 0XF8000B40[6:5] = 0x00000000U - // .. ==> MASK : 0x00000060U VAL : 0x00000000U - // .. IBUF_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B40[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B40[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B40[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B40[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B40, 0x00000FFFU ,0x00000600U), - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B44[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x0 - // .. ==> 0XF8000B44[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B44[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x0 - // .. ==> 0XF8000B44[4:4] = 0x00000000U - // .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. DCR_TYPE = 0x0 - // .. ==> 0XF8000B44[6:5] = 0x00000000U - // .. ==> MASK : 0x00000060U VAL : 0x00000000U - // .. IBUF_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B44[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B44[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B44[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B44[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B44, 0x00000FFFU ,0x00000600U), - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B48[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x1 - // .. ==> 0XF8000B48[2:1] = 0x00000001U - // .. ==> MASK : 0x00000006U VAL : 0x00000002U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B48[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x1 - // .. ==> 0XF8000B48[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. DCR_TYPE = 0x3 - // .. ==> 0XF8000B48[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. IBUF_DISABLE_MODE = 0 - // .. ==> 0XF8000B48[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0 - // .. ==> 0XF8000B48[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B48[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B48[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B48, 0x00000FFFU ,0x00000672U), - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B4C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x1 - // .. ==> 0XF8000B4C[2:1] = 0x00000001U - // .. ==> MASK : 0x00000006U VAL : 0x00000002U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B4C[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x1 - // .. ==> 0XF8000B4C[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. DCR_TYPE = 0x3 - // .. ==> 0XF8000B4C[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. IBUF_DISABLE_MODE = 0 - // .. ==> 0XF8000B4C[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0 - // .. ==> 0XF8000B4C[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B4C[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B4C[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B4C, 0x00000FFFU ,0x00000672U), - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B50[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x2 - // .. ==> 0XF8000B50[2:1] = 0x00000002U - // .. ==> MASK : 0x00000006U VAL : 0x00000004U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B50[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x1 - // .. ==> 0XF8000B50[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. DCR_TYPE = 0x3 - // .. ==> 0XF8000B50[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. IBUF_DISABLE_MODE = 0 - // .. ==> 0XF8000B50[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0 - // .. ==> 0XF8000B50[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B50[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B50[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B50, 0x00000FFFU ,0x00000674U), - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B54[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x2 - // .. ==> 0XF8000B54[2:1] = 0x00000002U - // .. ==> MASK : 0x00000006U VAL : 0x00000004U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B54[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x1 - // .. ==> 0XF8000B54[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. DCR_TYPE = 0x3 - // .. ==> 0XF8000B54[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. IBUF_DISABLE_MODE = 0 - // .. ==> 0XF8000B54[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0 - // .. ==> 0XF8000B54[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B54[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B54[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B54, 0x00000FFFU ,0x00000674U), - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B58[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x0 - // .. ==> 0XF8000B58[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B58[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x0 - // .. ==> 0XF8000B58[4:4] = 0x00000000U - // .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. DCR_TYPE = 0x0 - // .. ==> 0XF8000B58[6:5] = 0x00000000U - // .. ==> MASK : 0x00000060U VAL : 0x00000000U - // .. IBUF_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B58[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B58[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B58[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B58[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B58, 0x00000FFFU ,0x00000600U), - // .. DRIVE_P = 0x1c - // .. ==> 0XF8000B5C[6:0] = 0x0000001CU - // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU - // .. DRIVE_N = 0xc - // .. ==> 0XF8000B5C[13:7] = 0x0000000CU - // .. ==> MASK : 0x00003F80U VAL : 0x00000600U - // .. SLEW_P = 0x3 - // .. ==> 0XF8000B5C[18:14] = 0x00000003U - // .. ==> MASK : 0x0007C000U VAL : 0x0000C000U - // .. SLEW_N = 0x3 - // .. ==> 0XF8000B5C[23:19] = 0x00000003U - // .. ==> MASK : 0x00F80000U VAL : 0x00180000U - // .. GTL = 0x0 - // .. ==> 0XF8000B5C[26:24] = 0x00000000U - // .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. RTERM = 0x0 - // .. ==> 0XF8000B5C[31:27] = 0x00000000U - // .. ==> MASK : 0xF8000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B5C, 0xFFFFFFFFU ,0x0018C61CU), - // .. DRIVE_P = 0x1c - // .. ==> 0XF8000B60[6:0] = 0x0000001CU - // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU - // .. DRIVE_N = 0xc - // .. ==> 0XF8000B60[13:7] = 0x0000000CU - // .. ==> MASK : 0x00003F80U VAL : 0x00000600U - // .. SLEW_P = 0x6 - // .. ==> 0XF8000B60[18:14] = 0x00000006U - // .. ==> MASK : 0x0007C000U VAL : 0x00018000U - // .. SLEW_N = 0x1f - // .. ==> 0XF8000B60[23:19] = 0x0000001FU - // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U - // .. GTL = 0x0 - // .. ==> 0XF8000B60[26:24] = 0x00000000U - // .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. RTERM = 0x0 - // .. ==> 0XF8000B60[31:27] = 0x00000000U - // .. ==> MASK : 0xF8000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B60, 0xFFFFFFFFU ,0x00F9861CU), - // .. DRIVE_P = 0x1c - // .. ==> 0XF8000B64[6:0] = 0x0000001CU - // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU - // .. DRIVE_N = 0xc - // .. ==> 0XF8000B64[13:7] = 0x0000000CU - // .. ==> MASK : 0x00003F80U VAL : 0x00000600U - // .. SLEW_P = 0x6 - // .. ==> 0XF8000B64[18:14] = 0x00000006U - // .. ==> MASK : 0x0007C000U VAL : 0x00018000U - // .. SLEW_N = 0x1f - // .. ==> 0XF8000B64[23:19] = 0x0000001FU - // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U - // .. GTL = 0x0 - // .. ==> 0XF8000B64[26:24] = 0x00000000U - // .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. RTERM = 0x0 - // .. ==> 0XF8000B64[31:27] = 0x00000000U - // .. ==> MASK : 0xF8000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B64, 0xFFFFFFFFU ,0x00F9861CU), - // .. DRIVE_P = 0x1c - // .. ==> 0XF8000B68[6:0] = 0x0000001CU - // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU - // .. DRIVE_N = 0xc - // .. ==> 0XF8000B68[13:7] = 0x0000000CU - // .. ==> MASK : 0x00003F80U VAL : 0x00000600U - // .. SLEW_P = 0x6 - // .. ==> 0XF8000B68[18:14] = 0x00000006U - // .. ==> MASK : 0x0007C000U VAL : 0x00018000U - // .. SLEW_N = 0x1f - // .. ==> 0XF8000B68[23:19] = 0x0000001FU - // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U - // .. GTL = 0x0 - // .. ==> 0XF8000B68[26:24] = 0x00000000U - // .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. RTERM = 0x0 - // .. ==> 0XF8000B68[31:27] = 0x00000000U - // .. ==> MASK : 0xF8000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B68, 0xFFFFFFFFU ,0x00F9861CU), - // .. VREF_INT_EN = 0x0 - // .. ==> 0XF8000B6C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. VREF_SEL = 0x0 - // .. ==> 0XF8000B6C[4:1] = 0x00000000U - // .. ==> MASK : 0x0000001EU VAL : 0x00000000U - // .. VREF_EXT_EN = 0x3 - // .. ==> 0XF8000B6C[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. VREF_PULLUP_EN = 0x0 - // .. ==> 0XF8000B6C[8:7] = 0x00000000U - // .. ==> MASK : 0x00000180U VAL : 0x00000000U - // .. REFIO_EN = 0x1 - // .. ==> 0XF8000B6C[9:9] = 0x00000001U - // .. ==> MASK : 0x00000200U VAL : 0x00000200U - // .. REFIO_PULLUP_EN = 0x0 - // .. ==> 0XF8000B6C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DRST_B_PULLUP_EN = 0x0 - // .. ==> 0XF8000B6C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. CKE_PULLUP_EN = 0x0 - // .. ==> 0XF8000B6C[14:14] = 0x00000000U - // .. ==> MASK : 0x00004000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B6C, 0x000073FFU ,0x00000260U), - // .. .. START: ASSERT RESET - // .. .. RESET = 1 - // .. .. ==> 0XF8000B70[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. VRN_OUT = 0x1 - // .. .. ==> 0XF8000B70[5:5] = 0x00000001U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000020U - // .. .. - EMIT_MASKWRITE(0XF8000B70, 0x00000021U ,0x00000021U), - // .. .. FINISH: ASSERT RESET - // .. .. START: DEASSERT RESET - // .. .. RESET = 0 - // .. .. ==> 0XF8000B70[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. VRN_OUT = 0x1 - // .. .. ==> 0XF8000B70[5:5] = 0x00000001U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000020U - // .. .. - EMIT_MASKWRITE(0XF8000B70, 0x00000021U ,0x00000020U), - // .. .. FINISH: DEASSERT RESET - // .. .. RESET = 0x1 - // .. .. ==> 0XF8000B70[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. ENABLE = 0x1 - // .. .. ==> 0XF8000B70[1:1] = 0x00000001U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. .. VRP_TRI = 0x0 - // .. .. ==> 0XF8000B70[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. VRN_TRI = 0x0 - // .. .. ==> 0XF8000B70[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. VRP_OUT = 0x0 - // .. .. ==> 0XF8000B70[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. VRN_OUT = 0x1 - // .. .. ==> 0XF8000B70[5:5] = 0x00000001U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000020U - // .. .. NREF_OPT1 = 0x0 - // .. .. ==> 0XF8000B70[7:6] = 0x00000000U - // .. .. ==> MASK : 0x000000C0U VAL : 0x00000000U - // .. .. NREF_OPT2 = 0x0 - // .. .. ==> 0XF8000B70[10:8] = 0x00000000U - // .. .. ==> MASK : 0x00000700U VAL : 0x00000000U - // .. .. NREF_OPT4 = 0x1 - // .. .. ==> 0XF8000B70[13:11] = 0x00000001U - // .. .. ==> MASK : 0x00003800U VAL : 0x00000800U - // .. .. PREF_OPT1 = 0x0 - // .. .. ==> 0XF8000B70[16:14] = 0x00000000U - // .. .. ==> MASK : 0x0001C000U VAL : 0x00000000U - // .. .. PREF_OPT2 = 0x0 - // .. .. ==> 0XF8000B70[19:17] = 0x00000000U - // .. .. ==> MASK : 0x000E0000U VAL : 0x00000000U - // .. .. UPDATE_CONTROL = 0x0 - // .. .. ==> 0XF8000B70[20:20] = 0x00000000U - // .. .. ==> MASK : 0x00100000U VAL : 0x00000000U - // .. .. INIT_COMPLETE = 0x0 - // .. .. ==> 0XF8000B70[21:21] = 0x00000000U - // .. .. ==> MASK : 0x00200000U VAL : 0x00000000U - // .. .. TST_CLK = 0x0 - // .. .. ==> 0XF8000B70[22:22] = 0x00000000U - // .. .. ==> MASK : 0x00400000U VAL : 0x00000000U - // .. .. TST_HLN = 0x0 - // .. .. ==> 0XF8000B70[23:23] = 0x00000000U - // .. .. ==> MASK : 0x00800000U VAL : 0x00000000U - // .. .. TST_HLP = 0x0 - // .. .. ==> 0XF8000B70[24:24] = 0x00000000U - // .. .. ==> MASK : 0x01000000U VAL : 0x00000000U - // .. .. TST_RST = 0x0 - // .. .. ==> 0XF8000B70[25:25] = 0x00000000U - // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U - // .. .. INT_DCI_EN = 0x0 - // .. .. ==> 0XF8000B70[26:26] = 0x00000000U - // .. .. ==> MASK : 0x04000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8000B70, 0x07FFFFFFU ,0x00000823U), - // .. FINISH: DDRIOB SETTINGS - // .. START: MIO PROGRAMMING - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000700[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000700[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000700[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000700[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000700[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF8000700[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000700[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000700[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000700[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000700, 0x00003FFFU ,0x00001600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000704[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000704[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000704[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000704[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000704[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000704[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000704[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000704[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000704[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000704, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000708[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000708[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000708[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000708[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000708[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000708[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000708[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000708[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000708[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000708, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800070C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF800070C[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF800070C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800070C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800070C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800070C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF800070C[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF800070C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800070C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800070C, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000710[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000710[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000710[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000710[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000710[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000710[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000710[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000710[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000710[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000710, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000714[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000714[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000714[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000714[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000714[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000714[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000714[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000714[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000714[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000714, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000718[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000718[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000718[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000718[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000718[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000718[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000718[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000718[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000718[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000718, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800071C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800071C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF800071C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800071C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800071C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF800071C[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF800071C[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF800071C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800071C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800071C, 0x00003FFFU ,0x00000600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000720[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000720[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000720[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000720[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000720[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000720[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000720[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000720[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000720[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000720, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000724[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000724[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000724[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000724[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000724[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF8000724[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000724[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000724[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000724[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000724, 0x00003FFFU ,0x00001600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000728[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000728[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000728[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000728[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 2 - // .. ==> 0XF8000728[7:5] = 0x00000002U - // .. ==> MASK : 0x000000E0U VAL : 0x00000040U - // .. Speed = 0 - // .. ==> 0XF8000728[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000728[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000728[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000728[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000728, 0x00003FFFU ,0x00001640U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800072C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800072C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF800072C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800072C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 2 - // .. ==> 0XF800072C[7:5] = 0x00000002U - // .. ==> MASK : 0x000000E0U VAL : 0x00000040U - // .. Speed = 0 - // .. ==> 0XF800072C[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF800072C[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF800072C[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF800072C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800072C, 0x00003FFFU ,0x00001640U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000730[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000730[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000730[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000730[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 2 - // .. ==> 0XF8000730[7:5] = 0x00000002U - // .. ==> MASK : 0x000000E0U VAL : 0x00000040U - // .. Speed = 0 - // .. ==> 0XF8000730[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000730[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000730[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000730[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000730, 0x00003FFFU ,0x00001640U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000734[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000734[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000734[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000734[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 2 - // .. ==> 0XF8000734[7:5] = 0x00000002U - // .. ==> MASK : 0x000000E0U VAL : 0x00000040U - // .. Speed = 0 - // .. ==> 0XF8000734[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000734[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000734[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000734[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000734, 0x00003FFFU ,0x00001640U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000738[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000738[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000738[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000738[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000738[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF8000738[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000738[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000738[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000738[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000738, 0x00003FFFU ,0x00001600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800073C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800073C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF800073C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800073C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800073C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF800073C[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF800073C[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF800073C[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF800073C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800073C, 0x00003FFFU ,0x00001600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000740[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000740[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000740[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000740[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000740[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000740[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000740[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000740[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000740[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000740, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000744[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000744[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000744[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000744[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000744[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000744[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000744[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000744[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000744[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000744, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000748[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000748[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000748[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000748[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000748[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000748[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000748[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000748[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000748[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000748, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800074C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF800074C[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF800074C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800074C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800074C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800074C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF800074C[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF800074C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF800074C[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF800074C, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000750[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000750[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000750[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000750[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000750[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000750[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000750[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000750[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000750[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000750, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000754[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000754[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000754[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000754[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000754[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000754[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000754[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000754[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000754[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000754, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000758[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF8000758[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000758[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000758[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000758[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000758[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000758[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000758[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000758[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000758, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF800075C[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF800075C[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF800075C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800075C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800075C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800075C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF800075C[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF800075C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800075C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800075C, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000760[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF8000760[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000760[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000760[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000760[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000760[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000760[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000760[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000760[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000760, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000764[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF8000764[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000764[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000764[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000764[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000764[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000764[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000764[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000764[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000764, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000768[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF8000768[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000768[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000768[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000768[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000768[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000768[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000768[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000768[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000768, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF800076C[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF800076C[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF800076C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800076C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800076C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800076C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF800076C[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF800076C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800076C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800076C, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000770[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000770[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000770[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000770[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000770[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000770[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000770[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000770[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000770[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000770, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000774[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 0 - // .. ==> 0XF8000774[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000774[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000774[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000774[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000774[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000774[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000774[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000774[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000774, 0x00003FFFU ,0x00000305U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000778[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000778[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000778[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000778[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000778[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000778[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000778[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000778[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000778[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000778, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF800077C[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 0 - // .. ==> 0XF800077C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF800077C[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF800077C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800077C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800077C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF800077C[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF800077C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800077C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800077C, 0x00003FFFU ,0x00000305U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000780[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000780[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000780[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000780[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000780[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000780[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000780[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000780[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000780[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000780, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000784[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000784[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000784[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000784[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000784[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000784[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000784[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000784[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000784[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000784, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000788[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000788[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000788[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000788[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000788[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000788[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000788[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000788[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000788[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000788, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800078C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800078C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF800078C[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF800078C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800078C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800078C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF800078C[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF800078C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800078C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800078C, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000790[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 0 - // .. ==> 0XF8000790[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000790[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000790[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000790[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000790[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000790[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000790[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000790[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000790, 0x00003FFFU ,0x00000305U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000794[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000794[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000794[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000794[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000794[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000794[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000794[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000794[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000794[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000794, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000798[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000798[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000798[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000798[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000798[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000798[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000798[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000798[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000798[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000798, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800079C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800079C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF800079C[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF800079C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800079C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800079C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF800079C[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF800079C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800079C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800079C, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007A0[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007A0[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007A0[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007A0[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007A0[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007A0[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007A0[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007A0[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007A0[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007A0, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007A4[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007A4[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007A4[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007A4[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007A4[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007A4[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007A4[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007A4[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007A4[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007A4, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007A8[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007A8[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007A8[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007A8[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007A8[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007A8[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007A8[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007A8[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007A8[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007A8, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007AC[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007AC[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007AC[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007AC[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007AC[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007AC[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007AC[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007AC[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007AC[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007AC, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007B0[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007B0[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007B0[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007B0[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007B0[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007B0[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007B0[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007B0[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007B0[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007B0, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007B4[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007B4[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007B4[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007B4[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007B4[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007B4[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007B4[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007B4[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007B4[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007B4, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007B8[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007B8[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007B8[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007B8[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007B8[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007B8[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007B8[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 1 - // .. ==> 0XF80007B8[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007B8[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007B8, 0x00003FFFU ,0x00001200U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF80007BC[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. Speed = 0 - // .. ==> 0XF80007BC[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007BC[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007BC[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007BC[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007BC, 0x00003F01U ,0x00000201U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007C0[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007C0[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007C0[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007C0[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 7 - // .. ==> 0XF80007C0[7:5] = 0x00000007U - // .. ==> MASK : 0x000000E0U VAL : 0x000000E0U - // .. Speed = 0 - // .. ==> 0XF80007C0[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007C0[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007C0[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007C0[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007C0, 0x00003FFFU ,0x000002E0U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF80007C4[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 0 - // .. ==> 0XF80007C4[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007C4[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007C4[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 7 - // .. ==> 0XF80007C4[7:5] = 0x00000007U - // .. ==> MASK : 0x000000E0U VAL : 0x000000E0U - // .. Speed = 0 - // .. ==> 0XF80007C4[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007C4[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007C4[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007C4[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007C4, 0x00003FFFU ,0x000002E1U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007C8[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007C8[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007C8[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007C8[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007C8[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007C8[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007C8[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007C8[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007C8[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007C8, 0x00003FFFU ,0x00000200U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007CC[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007CC[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007CC[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007CC[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007CC[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007CC[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007CC[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007CC[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007CC[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007CC, 0x00003FFFU ,0x00000200U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007D0[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007D0[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007D0[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007D0[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007D0[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007D0[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007D0[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007D0[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007D0[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007D0, 0x00003FFFU ,0x00000200U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007D4[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007D4[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007D4[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007D4[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007D4[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007D4[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007D4[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007D4[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007D4[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007D4, 0x00003FFFU ,0x00000200U), - // .. SDIO0_WP_SEL = 55 - // .. ==> 0XF8000830[5:0] = 0x00000037U - // .. ==> MASK : 0x0000003FU VAL : 0x00000037U - // .. SDIO0_CD_SEL = 47 - // .. ==> 0XF8000830[21:16] = 0x0000002FU - // .. ==> MASK : 0x003F0000U VAL : 0x002F0000U - // .. - EMIT_MASKWRITE(0XF8000830, 0x003F003FU ,0x002F0037U), - // .. FINISH: MIO PROGRAMMING - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_peripherals_init_data_1_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: DDR TERM/IBUF_DISABLE_MODE SETTINGS - // .. IBUF_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B48[7:7] = 0x00000001U - // .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. TERM_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B48[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. - EMIT_MASKWRITE(0XF8000B48, 0x00000180U ,0x00000180U), - // .. IBUF_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B4C[7:7] = 0x00000001U - // .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. TERM_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B4C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. - EMIT_MASKWRITE(0XF8000B4C, 0x00000180U ,0x00000180U), - // .. IBUF_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B50[7:7] = 0x00000001U - // .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. TERM_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B50[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. - EMIT_MASKWRITE(0XF8000B50, 0x00000180U ,0x00000180U), - // .. IBUF_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B54[7:7] = 0x00000001U - // .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. TERM_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B54[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. - EMIT_MASKWRITE(0XF8000B54, 0x00000180U ,0x00000180U), - // .. FINISH: DDR TERM/IBUF_DISABLE_MODE SETTINGS - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // .. START: SRAM/NOR SET OPMODE - // .. FINISH: SRAM/NOR SET OPMODE - // .. START: UART REGISTERS - // .. BDIV = 0x6 - // .. ==> 0XE0001034[7:0] = 0x00000006U - // .. ==> MASK : 0x000000FFU VAL : 0x00000006U - // .. - EMIT_MASKWRITE(0XE0001034, 0x000000FFU ,0x00000006U), - // .. CD = 0x7c - // .. ==> 0XE0001018[15:0] = 0x0000007CU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000007CU - // .. - EMIT_MASKWRITE(0XE0001018, 0x0000FFFFU ,0x0000007CU), - // .. STPBRK = 0x0 - // .. ==> 0XE0001000[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. STTBRK = 0x0 - // .. ==> 0XE0001000[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. RSTTO = 0x0 - // .. ==> 0XE0001000[6:6] = 0x00000000U - // .. ==> MASK : 0x00000040U VAL : 0x00000000U - // .. TXDIS = 0x0 - // .. ==> 0XE0001000[5:5] = 0x00000000U - // .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. TXEN = 0x1 - // .. ==> 0XE0001000[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. RXDIS = 0x0 - // .. ==> 0XE0001000[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. RXEN = 0x1 - // .. ==> 0XE0001000[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. TXRES = 0x1 - // .. ==> 0XE0001000[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. RXRES = 0x1 - // .. ==> 0XE0001000[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. - EMIT_MASKWRITE(0XE0001000, 0x000001FFU ,0x00000017U), - // .. IRMODE = 0x0 - // .. ==> 0XE0001004[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. UCLKEN = 0x0 - // .. ==> 0XE0001004[10:10] = 0x00000000U - // .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. CHMODE = 0x0 - // .. ==> 0XE0001004[9:8] = 0x00000000U - // .. ==> MASK : 0x00000300U VAL : 0x00000000U - // .. NBSTOP = 0x0 - // .. ==> 0XE0001004[7:6] = 0x00000000U - // .. ==> MASK : 0x000000C0U VAL : 0x00000000U - // .. PAR = 0x4 - // .. ==> 0XE0001004[5:3] = 0x00000004U - // .. ==> MASK : 0x00000038U VAL : 0x00000020U - // .. CHRL = 0x0 - // .. ==> 0XE0001004[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. CLKS = 0x0 - // .. ==> 0XE0001004[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XE0001004, 0x00000FFFU ,0x00000020U), - // .. BDIV = 0x6 - // .. ==> 0XE0000034[7:0] = 0x00000006U - // .. ==> MASK : 0x000000FFU VAL : 0x00000006U - // .. - EMIT_MASKWRITE(0XE0000034, 0x000000FFU ,0x00000006U), - // .. CD = 0x7c - // .. ==> 0XE0000018[15:0] = 0x0000007CU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000007CU - // .. - EMIT_MASKWRITE(0XE0000018, 0x0000FFFFU ,0x0000007CU), - // .. STPBRK = 0x0 - // .. ==> 0XE0000000[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. STTBRK = 0x0 - // .. ==> 0XE0000000[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. RSTTO = 0x0 - // .. ==> 0XE0000000[6:6] = 0x00000000U - // .. ==> MASK : 0x00000040U VAL : 0x00000000U - // .. TXDIS = 0x0 - // .. ==> 0XE0000000[5:5] = 0x00000000U - // .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. TXEN = 0x1 - // .. ==> 0XE0000000[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. RXDIS = 0x0 - // .. ==> 0XE0000000[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. RXEN = 0x1 - // .. ==> 0XE0000000[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. TXRES = 0x1 - // .. ==> 0XE0000000[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. RXRES = 0x1 - // .. ==> 0XE0000000[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. - EMIT_MASKWRITE(0XE0000000, 0x000001FFU ,0x00000017U), - // .. IRMODE = 0x0 - // .. ==> 0XE0000004[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. UCLKEN = 0x0 - // .. ==> 0XE0000004[10:10] = 0x00000000U - // .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. CHMODE = 0x0 - // .. ==> 0XE0000004[9:8] = 0x00000000U - // .. ==> MASK : 0x00000300U VAL : 0x00000000U - // .. NBSTOP = 0x0 - // .. ==> 0XE0000004[7:6] = 0x00000000U - // .. ==> MASK : 0x000000C0U VAL : 0x00000000U - // .. PAR = 0x4 - // .. ==> 0XE0000004[5:3] = 0x00000004U - // .. ==> MASK : 0x00000038U VAL : 0x00000020U - // .. CHRL = 0x0 - // .. ==> 0XE0000004[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. CLKS = 0x0 - // .. ==> 0XE0000004[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XE0000004, 0x00000FFFU ,0x00000020U), - // .. FINISH: UART REGISTERS - // .. START: QSPI REGISTERS - // .. Holdb_dr = 1 - // .. ==> 0XE000D000[19:19] = 0x00000001U - // .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. - EMIT_MASKWRITE(0XE000D000, 0x00080000U ,0x00080000U), - // .. FINISH: QSPI REGISTERS - // .. START: PL POWER ON RESET REGISTERS - // .. PCFG_POR_CNT_4K = 0 - // .. ==> 0XF8007000[29:29] = 0x00000000U - // .. ==> MASK : 0x20000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8007000, 0x20000000U ,0x00000000U), - // .. FINISH: PL POWER ON RESET REGISTERS - // .. START: SMC TIMING CALCULATION REGISTER UPDATE - // .. .. START: NAND SET CYCLE - // .. .. FINISH: NAND SET CYCLE - // .. .. START: OPMODE - // .. .. FINISH: OPMODE - // .. .. START: DIRECT COMMAND - // .. .. FINISH: DIRECT COMMAND - // .. .. START: SRAM/NOR CS0 SET CYCLE - // .. .. FINISH: SRAM/NOR CS0 SET CYCLE - // .. .. START: DIRECT COMMAND - // .. .. FINISH: DIRECT COMMAND - // .. .. START: NOR CS0 BASE ADDRESS - // .. .. FINISH: NOR CS0 BASE ADDRESS - // .. .. START: SRAM/NOR CS1 SET CYCLE - // .. .. FINISH: SRAM/NOR CS1 SET CYCLE - // .. .. START: DIRECT COMMAND - // .. .. FINISH: DIRECT COMMAND - // .. .. START: NOR CS1 BASE ADDRESS - // .. .. FINISH: NOR CS1 BASE ADDRESS - // .. .. START: USB RESET - // .. .. .. START: USB0 RESET - // .. .. .. .. START: DIR MODE BANK 0 - // .. .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. .. START: DIR MODE BANK 1 - // .. .. .. .. DIRECTION_1 = 0x4000 - // .. .. .. .. ==> 0XE000A244[21:0] = 0x00004000U - // .. .. .. .. ==> MASK : 0x003FFFFFU VAL : 0x00004000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A244, 0x003FFFFFU ,0x00004000U), - // .. .. .. .. FINISH: DIR MODE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. MASK_1_LSW = 0xbfff - // .. .. .. .. ==> 0XE000A008[31:16] = 0x0000BFFFU - // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xBFFF0000U - // .. .. .. .. DATA_1_LSW = 0x4000 - // .. .. .. .. ==> 0XE000A008[15:0] = 0x00004000U - // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00004000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A008, 0xFFFFFFFFU ,0xBFFF4000U), - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. .. .. START: OUTPUT ENABLE BANK 1 - // .. .. .. .. OP_ENABLE_1 = 0x4000 - // .. .. .. .. ==> 0XE000A248[21:0] = 0x00004000U - // .. .. .. .. ==> MASK : 0x003FFFFFU VAL : 0x00004000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A248, 0x003FFFFFU ,0x00004000U), - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. MASK_1_LSW = 0xbfff - // .. .. .. .. ==> 0XE000A008[31:16] = 0x0000BFFFU - // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xBFFF0000U - // .. .. .. .. DATA_1_LSW = 0x0 - // .. .. .. .. ==> 0XE000A008[15:0] = 0x00000000U - // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A008, 0xFFFFFFFFU ,0xBFFF0000U), - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. MASK_1_LSW = 0xbfff - // .. .. .. .. ==> 0XE000A008[31:16] = 0x0000BFFFU - // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xBFFF0000U - // .. .. .. .. DATA_1_LSW = 0x4000 - // .. .. .. .. ==> 0XE000A008[15:0] = 0x00004000U - // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00004000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A008, 0xFFFFFFFFU ,0xBFFF4000U), - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: USB0 RESET - // .. .. .. START: USB1 RESET - // .. .. .. .. START: DIR MODE BANK 0 - // .. .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. .. START: DIR MODE BANK 1 - // .. .. .. .. FINISH: DIR MODE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. .. .. START: OUTPUT ENABLE BANK 1 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: USB1 RESET - // .. .. FINISH: USB RESET - // .. .. START: ENET RESET - // .. .. .. START: ENET0 RESET - // .. .. .. .. START: DIR MODE BANK 0 - // .. .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. .. START: DIR MODE BANK 1 - // .. .. .. .. FINISH: DIR MODE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. .. .. START: OUTPUT ENABLE BANK 1 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: ENET0 RESET - // .. .. .. START: ENET1 RESET - // .. .. .. .. START: DIR MODE BANK 0 - // .. .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. .. START: DIR MODE BANK 1 - // .. .. .. .. FINISH: DIR MODE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. .. .. START: OUTPUT ENABLE BANK 1 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: ENET1 RESET - // .. .. FINISH: ENET RESET - // .. .. START: I2C RESET - // .. .. .. START: I2C0 RESET - // .. .. .. .. START: DIR MODE GPIO BANK0 - // .. .. .. .. FINISH: DIR MODE GPIO BANK0 - // .. .. .. .. START: DIR MODE GPIO BANK1 - // .. .. .. .. FINISH: DIR MODE GPIO BANK1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE - // .. .. .. .. FINISH: OUTPUT ENABLE - // .. .. .. .. START: OUTPUT ENABLE - // .. .. .. .. FINISH: OUTPUT ENABLE - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: I2C0 RESET - // .. .. .. START: I2C1 RESET - // .. .. .. .. START: DIR MODE GPIO BANK0 - // .. .. .. .. FINISH: DIR MODE GPIO BANK0 - // .. .. .. .. START: DIR MODE GPIO BANK1 - // .. .. .. .. FINISH: DIR MODE GPIO BANK1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE - // .. .. .. .. FINISH: OUTPUT ENABLE - // .. .. .. .. START: OUTPUT ENABLE - // .. .. .. .. FINISH: OUTPUT ENABLE - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: I2C1 RESET - // .. .. FINISH: I2C RESET - // .. .. START: NOR CHIP SELECT - // .. .. .. START: DIR MODE BANK 0 - // .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. FINISH: NOR CHIP SELECT - // .. FINISH: SMC TIMING CALCULATION REGISTER UPDATE - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_post_config_1_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: ENABLING LEVEL SHIFTER - // .. USER_INP_ICT_EN_0 = 3 - // .. ==> 0XF8000900[1:0] = 0x00000003U - // .. ==> MASK : 0x00000003U VAL : 0x00000003U - // .. USER_INP_ICT_EN_1 = 3 - // .. ==> 0XF8000900[3:2] = 0x00000003U - // .. ==> MASK : 0x0000000CU VAL : 0x0000000CU - // .. - EMIT_MASKWRITE(0XF8000900, 0x0000000FU ,0x0000000FU), - // .. FINISH: ENABLING LEVEL SHIFTER - // .. START: FPGA RESETS TO 0 - // .. reserved_3 = 0 - // .. ==> 0XF8000240[31:25] = 0x00000000U - // .. ==> MASK : 0xFE000000U VAL : 0x00000000U - // .. FPGA_ACP_RST = 0 - // .. ==> 0XF8000240[24:24] = 0x00000000U - // .. ==> MASK : 0x01000000U VAL : 0x00000000U - // .. FPGA_AXDS3_RST = 0 - // .. ==> 0XF8000240[23:23] = 0x00000000U - // .. ==> MASK : 0x00800000U VAL : 0x00000000U - // .. FPGA_AXDS2_RST = 0 - // .. ==> 0XF8000240[22:22] = 0x00000000U - // .. ==> MASK : 0x00400000U VAL : 0x00000000U - // .. FPGA_AXDS1_RST = 0 - // .. ==> 0XF8000240[21:21] = 0x00000000U - // .. ==> MASK : 0x00200000U VAL : 0x00000000U - // .. FPGA_AXDS0_RST = 0 - // .. ==> 0XF8000240[20:20] = 0x00000000U - // .. ==> MASK : 0x00100000U VAL : 0x00000000U - // .. reserved_2 = 0 - // .. ==> 0XF8000240[19:18] = 0x00000000U - // .. ==> MASK : 0x000C0000U VAL : 0x00000000U - // .. FSSW1_FPGA_RST = 0 - // .. ==> 0XF8000240[17:17] = 0x00000000U - // .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. FSSW0_FPGA_RST = 0 - // .. ==> 0XF8000240[16:16] = 0x00000000U - // .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. reserved_1 = 0 - // .. ==> 0XF8000240[15:14] = 0x00000000U - // .. ==> MASK : 0x0000C000U VAL : 0x00000000U - // .. FPGA_FMSW1_RST = 0 - // .. ==> 0XF8000240[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. FPGA_FMSW0_RST = 0 - // .. ==> 0XF8000240[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. FPGA_DMA3_RST = 0 - // .. ==> 0XF8000240[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. FPGA_DMA2_RST = 0 - // .. ==> 0XF8000240[10:10] = 0x00000000U - // .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. FPGA_DMA1_RST = 0 - // .. ==> 0XF8000240[9:9] = 0x00000000U - // .. ==> MASK : 0x00000200U VAL : 0x00000000U - // .. FPGA_DMA0_RST = 0 - // .. ==> 0XF8000240[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. reserved = 0 - // .. ==> 0XF8000240[7:4] = 0x00000000U - // .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. FPGA3_OUT_RST = 0 - // .. ==> 0XF8000240[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. FPGA2_OUT_RST = 0 - // .. ==> 0XF8000240[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. FPGA1_OUT_RST = 0 - // .. ==> 0XF8000240[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. FPGA0_OUT_RST = 0 - // .. ==> 0XF8000240[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000240, 0xFFFFFFFFU ,0x00000000U), - // .. FINISH: FPGA RESETS TO 0 - // .. START: AFI REGISTERS - // .. .. START: AFI0 REGISTERS - // .. .. FINISH: AFI0 REGISTERS - // .. .. START: AFI1 REGISTERS - // .. .. FINISH: AFI1 REGISTERS - // .. .. START: AFI2 REGISTERS - // .. .. FINISH: AFI2 REGISTERS - // .. .. START: AFI3 REGISTERS - // .. .. FINISH: AFI3 REGISTERS - // .. FINISH: AFI REGISTERS - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_debug_1_0[] = { - // START: top - // .. START: CROSS TRIGGER CONFIGURATIONS - // .. .. START: UNLOCKING CTI REGISTERS - // .. .. KEY = 0XC5ACCE55 - // .. .. ==> 0XF8898FB0[31:0] = 0xC5ACCE55U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U - // .. .. - EMIT_WRITE(0XF8898FB0, 0xC5ACCE55U), - // .. .. KEY = 0XC5ACCE55 - // .. .. ==> 0XF8899FB0[31:0] = 0xC5ACCE55U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U - // .. .. - EMIT_WRITE(0XF8899FB0, 0xC5ACCE55U), - // .. .. KEY = 0XC5ACCE55 - // .. .. ==> 0XF8809FB0[31:0] = 0xC5ACCE55U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U - // .. .. - EMIT_WRITE(0XF8809FB0, 0xC5ACCE55U), - // .. .. FINISH: UNLOCKING CTI REGISTERS - // .. .. START: ENABLING CTI MODULES AND CHANNELS - // .. .. FINISH: ENABLING CTI MODULES AND CHANNELS - // .. .. START: MAPPING CPU0, CPU1 AND FTM EVENTS TO CTM CHANNELS - // .. .. FINISH: MAPPING CPU0, CPU1 AND FTM EVENTS TO CTM CHANNELS - // .. FINISH: CROSS TRIGGER CONFIGURATIONS - // FINISH: top - // - EMIT_EXIT(), - - // -}; - - -#include "xil_io.h" -#define PS7_MASK_POLL_TIME 100000000 - -char* -getPS7MessageInfo(unsigned key) { - - char* err_msg = ""; - switch (key) { - case PS7_INIT_SUCCESS: err_msg = "PS7 initialization successful"; break; - case PS7_INIT_CORRUPT: err_msg = "PS7 init Data Corrupted"; break; - case PS7_INIT_TIMEOUT: err_msg = "PS7 init mask poll timeout"; break; - case PS7_POLL_FAILED_DDR_INIT: err_msg = "Mask Poll failed for DDR Init"; break; - case PS7_POLL_FAILED_DMA: err_msg = "Mask Poll failed for PLL Init"; break; - case PS7_POLL_FAILED_PLL: err_msg = "Mask Poll failed for DMA done bit"; break; - default: err_msg = "Undefined error status"; break; - } - - return err_msg; -} - -unsigned long -ps7GetSiliconVersion () { - // Read PS version from MCTRL register [31:28] - unsigned long mask = 0xF0000000; - unsigned long *addr = (unsigned long*) 0XF8007080; - unsigned long ps_version = (*addr & mask) >> 28; - return ps_version; -} - -void mask_write (unsigned long add , unsigned long mask, unsigned long val ) { - volatile unsigned long *addr = (volatile unsigned long*) add; - *addr = ( val & mask ) | ( *addr & ~mask); - //xil_printf("MaskWrite : 0x%x--> 0x%x \n \r" ,add, *addr); -} - - -int mask_poll(unsigned long add , unsigned long mask ) { - volatile unsigned long *addr = (volatile unsigned long*) add; - int i = 0; - while (!(*addr & mask)) { - if (i == PS7_MASK_POLL_TIME) { - return -1; - } - i++; - } - return 1; - //xil_printf("MaskPoll : 0x%x --> 0x%x \n \r" , add, *addr); -} - -unsigned long mask_read(unsigned long add , unsigned long mask ) { - volatile unsigned long *addr = (volatile unsigned long*) add; - unsigned long val = (*addr & mask); - //xil_printf("MaskRead : 0x%x --> 0x%x \n \r" , add, val); - return val; -} - - - -int -ps7_config(unsigned long * ps7_config_init) -{ - unsigned long *ptr = ps7_config_init; - - unsigned long opcode; // current instruction .. - unsigned long args[16]; // no opcode has so many args ... - int numargs; // number of arguments of this instruction - int j; // general purpose index - - volatile unsigned long *addr; // some variable to make code readable - unsigned long val,mask; // some variable to make code readable - - int finish = -1 ; // loop while this is negative ! - int i = 0; // Timeout variable - - while( finish < 0 ) { - numargs = ptr[0] & 0xF; - opcode = ptr[0] >> 4; - - for( j = 0 ; j < numargs ; j ++ ) - args[j] = ptr[j+1]; - ptr += numargs + 1; - - - switch ( opcode ) { - - case OPCODE_EXIT: - finish = PS7_INIT_SUCCESS; - break; - - case OPCODE_CLEAR: - addr = (unsigned long*) args[0]; - *addr = 0; - break; - - case OPCODE_WRITE: - addr = (unsigned long*) args[0]; - val = args[1]; - *addr = val; - break; - - case OPCODE_MASKWRITE: - addr = (unsigned long*) args[0]; - mask = args[1]; - val = args[2]; - *addr = ( val & mask ) | ( *addr & ~mask); - break; - - case OPCODE_MASKPOLL: - addr = (unsigned long*) args[0]; - mask = args[1]; - i = 0; - while (!(*addr & mask)) { - if (i == PS7_MASK_POLL_TIME) { - finish = PS7_INIT_TIMEOUT; - break; - } - i++; - } - break; - case OPCODE_MASKDELAY: - addr = (unsigned long*) args[0]; - mask = args[1]; - int delay = get_number_of_cycles_for_delay(mask); - perf_reset_and_start_timer(); - while ((*addr < delay)) { - } - break; - default: - finish = PS7_INIT_CORRUPT; - break; - } - } - return finish; -} - -unsigned long *ps7_mio_init_data = ps7_mio_init_data_3_0; -unsigned long *ps7_pll_init_data = ps7_pll_init_data_3_0; -unsigned long *ps7_clock_init_data = ps7_clock_init_data_3_0; -unsigned long *ps7_ddr_init_data = ps7_ddr_init_data_3_0; -unsigned long *ps7_peripherals_init_data = ps7_peripherals_init_data_3_0; - -int -ps7_post_config() -{ - // Get the PS_VERSION on run time - unsigned long si_ver = ps7GetSiliconVersion (); - int ret = -1; - if (si_ver == PCW_SILICON_VERSION_1) { - ret = ps7_config (ps7_post_config_1_0); - if (ret != PS7_INIT_SUCCESS) return ret; - } else if (si_ver == PCW_SILICON_VERSION_2) { - ret = ps7_config (ps7_post_config_2_0); - if (ret != PS7_INIT_SUCCESS) return ret; - } else { - ret = ps7_config (ps7_post_config_3_0); - if (ret != PS7_INIT_SUCCESS) return ret; - } - return PS7_INIT_SUCCESS; -} - -int -ps7_debug() -{ - // Get the PS_VERSION on run time - unsigned long si_ver = ps7GetSiliconVersion (); - int ret = -1; - if (si_ver == PCW_SILICON_VERSION_1) { - ret = ps7_config (ps7_debug_1_0); - if (ret != PS7_INIT_SUCCESS) return ret; - } else if (si_ver == PCW_SILICON_VERSION_2) { - ret = ps7_config (ps7_debug_2_0); - if (ret != PS7_INIT_SUCCESS) return ret; - } else { - ret = ps7_config (ps7_debug_3_0); - if (ret != PS7_INIT_SUCCESS) return ret; - } - return PS7_INIT_SUCCESS; -} - - -int -ps7_init() -{ - // Get the PS_VERSION on run time - unsigned long si_ver = ps7GetSiliconVersion (); - int ret; - //int pcw_ver = 0; - - if (si_ver == PCW_SILICON_VERSION_1) { - ps7_mio_init_data = ps7_mio_init_data_1_0; - ps7_pll_init_data = ps7_pll_init_data_1_0; - ps7_clock_init_data = ps7_clock_init_data_1_0; - ps7_ddr_init_data = ps7_ddr_init_data_1_0; - ps7_peripherals_init_data = ps7_peripherals_init_data_1_0; - //pcw_ver = 1; - - } else if (si_ver == PCW_SILICON_VERSION_2) { - ps7_mio_init_data = ps7_mio_init_data_2_0; - ps7_pll_init_data = ps7_pll_init_data_2_0; - ps7_clock_init_data = ps7_clock_init_data_2_0; - ps7_ddr_init_data = ps7_ddr_init_data_2_0; - ps7_peripherals_init_data = ps7_peripherals_init_data_2_0; - //pcw_ver = 2; - - } else { - ps7_mio_init_data = ps7_mio_init_data_3_0; - ps7_pll_init_data = ps7_pll_init_data_3_0; - ps7_clock_init_data = ps7_clock_init_data_3_0; - ps7_ddr_init_data = ps7_ddr_init_data_3_0; - ps7_peripherals_init_data = ps7_peripherals_init_data_3_0; - //pcw_ver = 3; - } - - // MIO init - ret = ps7_config (ps7_mio_init_data); - if (ret != PS7_INIT_SUCCESS) return ret; - - // PLL init - ret = ps7_config (ps7_pll_init_data); - if (ret != PS7_INIT_SUCCESS) return ret; - - // Clock init - ret = ps7_config (ps7_clock_init_data); - if (ret != PS7_INIT_SUCCESS) return ret; - - // DDR init - ret = ps7_config (ps7_ddr_init_data); - if (ret != PS7_INIT_SUCCESS) return ret; - - - - // Peripherals init - ret = ps7_config (ps7_peripherals_init_data); - if (ret != PS7_INIT_SUCCESS) return ret; - //xil_printf ("\n PCW Silicon Version : %d.0", pcw_ver); - return PS7_INIT_SUCCESS; -} - - - - -/* For delay calculation using global timer */ - -/* start timer */ - void perf_start_clock(void) -{ - *(volatile unsigned int*)SCU_GLOBAL_TIMER_CONTROL = ((1 << 0) | // Timer Enable - (1 << 3) | // Auto-increment - (0 << 8) // Pre-scale - ); -} - -/* stop timer and reset timer count regs */ - void perf_reset_clock(void) -{ - perf_disable_clock(); - *(volatile unsigned int*)SCU_GLOBAL_TIMER_COUNT_L32 = 0; - *(volatile unsigned int*)SCU_GLOBAL_TIMER_COUNT_U32 = 0; -} - -/* Compute mask for given delay in miliseconds*/ -int get_number_of_cycles_for_delay(unsigned int delay) -{ - // GTC is always clocked at 1/2 of the CPU frequency (CPU_3x2x) - return (APU_FREQ*delay/(2*1000)); - -} - -/* stop timer */ - void perf_disable_clock(void) -{ - *(volatile unsigned int*)SCU_GLOBAL_TIMER_CONTROL = 0; -} - -void perf_reset_and_start_timer() -{ - perf_reset_clock(); - perf_start_clock(); -} - - - - diff --git a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/ps7_init.h b/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/ps7_init.h deleted file mode 100644 index b88f82a5f..000000000 --- a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/ps7_init.h +++ /dev/null @@ -1,137 +0,0 @@ - -/****************************************************************************** -* -* (c) Copyright 2010-2014 Xilinx, Inc. All rights reserved. -* -* Permission is hereby granted, free of charge, to any person obtaining a copy of this -* software and associated documentation files (the "Software"), to deal in the Software -* without restriction, including without limitation the rights to use, copy, modify, merge, -* publish, distribute, sublicense, and/or sell copies of the Software, and to permit -* persons to whom the Software is furnished to do so, subject to the following conditions: -* -* The above copyright notice and this permission notice shall be included in all copies or -* substantial portions of the Software. -* -* Use of the Software is limited solely to applications: (a) running on a Xilinx device, or -* (b) that interact with a Xilinx device through a bus or interconnect. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING -* BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -* NONINFRINGEMENT. IN NO EVENT SHALL THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -* -* Except as contained in this notice, the name of the Xilinx shall not be used in advertising or -* otherwise to promote the sale, use or other dealings in this Software without prior written -* authorization from Xilinx. -* -*******************************************************************************/ -/****************************************************************************/ -/** -* -* @file ps7_init.h -* -* This file can be included in FSBL code -* to get prototype of ps7_init() function -* and error codes -* -*****************************************************************************/ - -#ifdef __cplusplus -extern "C" { -#endif - - -//typedef unsigned int u32; - - -/** do we need to make this name more unique ? **/ -//extern u32 ps7_init_data[]; -extern unsigned long * ps7_ddr_init_data; -extern unsigned long * ps7_mio_init_data; -extern unsigned long * ps7_pll_init_data; -extern unsigned long * ps7_clock_init_data; -extern unsigned long * ps7_peripherals_init_data; - - - -#define OPCODE_EXIT 0U -#define OPCODE_CLEAR 1U -#define OPCODE_WRITE 2U -#define OPCODE_MASKWRITE 3U -#define OPCODE_MASKPOLL 4U -#define OPCODE_MASKDELAY 5U -#define NEW_PS7_ERR_CODE 1 - -/* Encode number of arguments in last nibble */ -#define EMIT_EXIT() ( (OPCODE_EXIT << 4 ) | 0 ) -#define EMIT_CLEAR(addr) ( (OPCODE_CLEAR << 4 ) | 1 ) , addr -#define EMIT_WRITE(addr,val) ( (OPCODE_WRITE << 4 ) | 2 ) , addr, val -#define EMIT_MASKWRITE(addr,mask,val) ( (OPCODE_MASKWRITE << 4 ) | 3 ) , addr, mask, val -#define EMIT_MASKPOLL(addr,mask) ( (OPCODE_MASKPOLL << 4 ) | 2 ) , addr, mask -#define EMIT_MASKDELAY(addr,mask) ( (OPCODE_MASKDELAY << 4 ) | 2 ) , addr, mask - -/* Returns codes of PS7_Init */ -#define PS7_INIT_SUCCESS (0) // 0 is success in good old C -#define PS7_INIT_CORRUPT (1) // 1 the data is corrupted, and slcr reg are in corrupted state now -#define PS7_INIT_TIMEOUT (2) // 2 when a poll operation timed out -#define PS7_POLL_FAILED_DDR_INIT (3) // 3 when a poll operation timed out for ddr init -#define PS7_POLL_FAILED_DMA (4) // 4 when a poll operation timed out for dma done bit -#define PS7_POLL_FAILED_PLL (5) // 5 when a poll operation timed out for pll sequence init - - -/* Silicon Versions */ -#define PCW_SILICON_VERSION_1 0 -#define PCW_SILICON_VERSION_2 1 -#define PCW_SILICON_VERSION_3 2 - -/* This flag to be used by FSBL to check whether ps7_post_config() proc exixts */ -#define PS7_POST_CONFIG - -/* Freq of all peripherals */ - -#define APU_FREQ 650000000 -#define DDR_FREQ 525000000 -#define DCI_FREQ 10096154 -#define QSPI_FREQ 200000000 -#define SMC_FREQ 10000000 -#define ENET0_FREQ 125000000 -#define ENET1_FREQ 10000000 -#define USB0_FREQ 60000000 -#define USB1_FREQ 60000000 -#define SDIO_FREQ 50000000 -#define UART_FREQ 100000000 -#define SPI_FREQ 10000000 -#define I2C_FREQ 108333336 -#define WDT_FREQ 108333336 -#define TTC_FREQ 50000000 -#define CAN_FREQ 10000000 -#define PCAP_FREQ 200000000 -#define TPIU_FREQ 200000000 -#define FPGA0_FREQ 100000000 -#define FPGA1_FREQ 10000000 -#define FPGA2_FREQ 10000000 -#define FPGA3_FREQ 10000000 - - -/* For delay calculation using global registers*/ -#define SCU_GLOBAL_TIMER_COUNT_L32 0xF8F00200 -#define SCU_GLOBAL_TIMER_COUNT_U32 0xF8F00204 -#define SCU_GLOBAL_TIMER_CONTROL 0xF8F00208 -#define SCU_GLOBAL_TIMER_AUTO_INC 0xF8F00218 - -int ps7_config( unsigned long*); -int ps7_init(); -int ps7_post_config(); -int ps7_debug(); -char* getPS7MessageInfo(unsigned key); - -void perf_start_clock(void); -void perf_disable_clock(void); -void perf_reset_clock(void); -void perf_reset_and_start_timer(); -int get_number_of_cycles_for_delay(unsigned int delay); -#ifdef __cplusplus -} -#endif - diff --git a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/ps7_init.html b/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/ps7_init.html deleted file mode 100644 index b794a3427..000000000 --- a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/ps7_init.html +++ /dev/null @@ -1,142728 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html lang="en"> -<head> -<meta http-equiv="content-type" content="text/html;charset=UTF-8"> -<title>Zynq PS configuration detail</title> -<style type="text/css">.sitename { background-color: #EEE;border:2px ridge #FFCF01;color: #B20838; font-size:22px; font-style:oblique; font-weight:bold;margin:0px 0px 10px 0px;padding:5px 0px; text-align:center; z-index: 3; -moz-border-radius: 10px; -webkit-border-radius: 10px; -khtml-border-radius: 10px; border-radius: 10px;}.navpath {color: #FFCF01; font-size:8px;padding: 7px 2px 2px 11px; text-transform: capitalize; z-index:2;}.navbar { background-color: #B20838; background-color: #EE3424;color: #fff;border: 1px solid #000; border-left: 0px solid #000; border-right: 0px solid #000; font-family: arial, sans-serif; font-weight: bold;height:50px; letter-spacing: 2px; text-transform: uppercase;position:fixed;top:0px;left:0px;right:0px; z-index: 0; /* -moz-border-radius: 10px; -webkit-border-radius: 10px; -khtml-border-radius: 10px; border-radius: 10px; */}.navlink_container { text-align:center;position: absolute;bottom:-1px;}.navbar a {color: #FFF;}.navbar a:hover {color: #EC891D;}.navbar ul { margin-left: 0px;height: 70px;overflow: hidden;}.navbar li { background-color: #B20838;padding: 4px 400px 4px 400px;float: left; font-size:24px;width: 800px;}.navbar li:hover { background-color: #000;color: #eee;}.navbar li#last { padding-right: 10px; border-right: 1px solid #050505; background-image: none;}.nav_splash {width: 80%;float:right; z-index: 0;}.search_form {position:fixed;top:25px;right:5px; z-index:2;}.action_tray {padding:5px;position: fixed;top: 57px;width: 210px;}.action_tray_header { text-align: center; background-color: #DDD;border: 2px groove #FFCF01; margin-bottom: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; -khtml-border-radius: 10px; border-radius: 10px;}.action_tray_header:hover { background-color: #eee;}.action_container {padding:10px 5px; text-align: center;}.action { background-color: #FFF;border: 1px outset #B20838;padding: 5px 0px; font-weight:bolder; margin-bottom: 2px; -moz-border-radius: 7px; -webkit-border-radius: 7px; -khtml-border-radius: 7px; border-radius: 7px; text-transform:uppercase;color: #B20838; }.action:hover {border: 1px inset #000; background-color: #FFCF01;color: #000;}.content_container { background-color:#fff;border: 0px solid #000; border-left: 1px solid #000;color: #000;overflow:auto;padding: 10px;position:fixed;left: 224px;top: 52px;right: 0px;bottom:0px; text-align: left; padding-right:25px; z-index:1;}.SelectButtons { background-color:white; border-width:1px 1px 1px 1px; border-style:solid; border-color:black;margin:10px 10px 10px 0px; z-index:2; -moz-border-radius: 5px; -webkit-border-radius: 5px; -khtml-border-radius: 5px; border-radius: 5px; font-weight:bold;}address { margin-top: 1em; padding-top: 1em; border-top: thin dotted }.viewButtons { background-color:#F3F781; border-width:1px 1px 1px 1px; border-style:solid; border-color:black;margin:10px 0px 10px 0px; z-index:2; -moz-border-radius: 5px; -webkit-border-radius: 5px; -khtml-border-radius: 5px; border-radius: 5px; font-weight:bold;}address { margin-top: 1em; padding-top: 1em; border-top: thin dotted }.db_selector {margin:10px 0px 10px 0px;}.db_selector_title { background-color: #00FFFF;border: 1px solid #000; margin-bottom:5px; font-weight:bold;padding:5px 3px; -moz-border-radius: 5px; -webkit-border-radius: 5px; -khtml-border-radius: 5px; border-radius: 5px;}select { background-color: #FFEFC0; font-weight:bolder;padding:3px; -moz-border-radius: 5px; -webkit-border-radius: 5px; -khtml-border-radius: 5px; border-radius: 5px;}select:hover { background-color: #AFEFF0; }</style> -<script type="text/javascript" language="JavaScript">function ChangeSilRegLink(id) { var ver=document.getElementById(id).value; if (ver == "Silicon3.0") { document.getElementById("MIO_Registers").href="#ps7_mio_init_data_3_0"; document.getElementById("PLL_Registers").href="#ps7_pll_init_data_3_0"; document.getElementById("Clock_Registers").href="#ps7_clock_init_data_3_0"; document.getElementById("DDR_Registers").href="#ps7_ddr_init_data_3_0"; document.getElementById("Peri_Registers").href="#ps7_peripherals_init_data_3_0"; window.location = '#ps7_mio_init_data_3_0'; } else if (ver == "Silicon2.0") { document.getElementById("MIO_Registers").href="#ps7_mio_init_data_2_0"; document.getElementById("PLL_Registers").href="#ps7_pll_init_data_2_0"; document.getElementById("Clock_Registers").href="#ps7_clock_init_data_2_0"; document.getElementById("DDR_Registers").href="#ps7_ddr_init_data_2_0"; document.getElementById("Peri_Registers").href="#ps7_peripherals_init_data_2_0"; window.location = '#ps7_mio_init_data_2_0'; } else { document.getElementById("MIO_Registers").href="#ps7_mio_init_data_1_0"; document.getElementById("PLL_Registers").href="#ps7_pll_init_data_1_0"; document.getElementById("Clock_Registers").href="#ps7_clock_init_data_1_0"; document.getElementById("DDR_Registers").href="#ps7_ddr_init_data_1_0"; document.getElementById("Peri_Registers").href="#ps7_peripherals_init_data_1_0"; window.location = '#ps7_mio_init_data_1_0'; }}</script> -<body> -<DIV class="navbar"> -<DIV class="navlink_container"> -<A id="Summary" href="#"> -<li> -<DIV class="navlink">Zynq PS Register Summary Viewer -</DIV> -</li> -</A> -</DIV> -</DIV> -<DIV class="action_tray"> -<A id="Report" href="#"> -<DIV class="sitename">Zynq PS7 Summary Report -</DIV> -</A> -<DIV class="viewButtons">User Configurations -</DIV> -<DIV class="viewButtons"> -<A id="MIO_Configurations" href="#ZynqPerTab"> -<DIV class="viewButtonHalf">MIO Configurations -</DIV> -</A> -<HR class="action_separator"> -<A id="CLK_Configurations" href="#ClockInfoTab"> -<DIV class="viewButtonHalf">CLK Configurations -</DIV> -</A> -<HR class="action_separator"> -<A id="DDR_Configurations" href="#DDRInfoTab"> -<DIV class="viewButtonHalf">DDR Configurations -</DIV> -</A> -<HR class="action_separator"> -<A id="SMC_Configurations" href="#SMCInfoTab"> -<DIV class="viewButtonHalf">SMC Configurations -</DIV> -</A> -</DIV> -<DIV class="db_selector"> -<DIV class="db_selector_title">Select Version: -<select id="db_selection" class="db_selection" onChange="ChangeSilRegLink(this.id)" width="210" style="width: 210px"> -<option value="Silicon3.0">Silicon 3.0</option> -<option value="Silicon2.0">Silicon 2.0</option> -<option value="Silicon1.0">Silicon 1.0</option> -</select> -</DIV> -</DIV> -<DIV class="viewButtons">Zynq Register View -</DIV> -<DIV class="action_container"> -<A id="MIO_Registers" href="#ps7_mio_init_data_3_0"> -<DIV class="action">MIO Registers -</DIV> -</A> -<A id="PLL_Registers" href="#ps7_pll_init_data_3_0"> -<DIV class="action">PLL Registers -</DIV> -</A> -<A id="Clock_Registers" href="#ps7_clock_init_data_3_0"> -<DIV class="action">Clock Registers -</DIV> -</A> -<A id="DDR_Registers" href="#ps7_ddr_init_data_3_0"> -<DIV class="action">DDR Registers -</DIV> -</A> -<A id="Peri_Registers" href="#ps7_peripherals_init_data_3_0"> -<DIV class="action">Peripherals Registers -</DIV> -</A> -</DIV> -<DIV class="content_container">This design is targeted for xc7z010 board (part number: xc7z010clg400-1) - -<br> -<H1>Zynq Design Summary</H1> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=20% BGCOLOR=#C0C0FF> -<B>Device</B> -</TD> -<TD width=80% BGCOLOR=#E6E6E6> -xc7z010 -</TD> -</TR> -<TR valign="top"> -<TD width=20% BGCOLOR=#C0C0FF> -<B>SpeedGrade</B> -</TD> -<TD width=80% BGCOLOR=#E6E6E6> --1 -</TD> -</TR> -<TR valign="top"> -<TD width=20% BGCOLOR=#C0C0FF> -<B>Part</B> -</TD> -<TD width=80% BGCOLOR=#E6E6E6> -xc7z010clg400-1 -</TD> -</TR> -<TR valign="top"> -<TD width=20% BGCOLOR=#C0C0FF> -<B>Description</B> -</TD> -<TD width=80% BGCOLOR=#E6E6E6> -Zynq PS Configuration Report with register details -</TD> -</TR> -<TR valign="top"> -<TD width=20% BGCOLOR=#C0C0FF> -<B>Vendor</B> -</TD> -<TD width=80% BGCOLOR=#E6E6E6> -Xilinx -</TD> -</TR> -</TABLE> -<H2><a name="ZynqPerTab">MIO Table View</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=10% BGCOLOR=#C0C0FF> -<B>MIO Pin</B> -</TD> -<TD width=10% BGCOLOR=#C0C0FF> -<B>Peripheral</B> -</TD> -<TD width=10% BGCOLOR=#C0C0FF> -<B>Signal</B> -</TD> -<TD width=10% BGCOLOR=#C0C0FF> -<B>IO Type</B> -</TD> -<TD width=10% BGCOLOR=#C0C0FF> -<B>Speed</B> -</TD> -<TD width=10% BGCOLOR=#C0C0FF> -<B>Pullup</B> -</TD> -<TD width=10% BGCOLOR=#C0C0FF> -<B>Direction</B> -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -GPIO -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -gpio[0] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 3.3V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -slow -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -enabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Quad SPI Flash -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -qspi0_ss_b -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 3.3V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -out -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Quad SPI Flash -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -qspi0_io[0] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 3.3V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Quad SPI Flash -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -qspi0_io[1] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 3.3V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Quad SPI Flash -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -qspi0_io[2] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 3.3V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Quad SPI Flash -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -qspi0_io[3] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 3.3V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Quad SPI Flash -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -qspi0_sclk -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 3.3V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -out -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -GPIO -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -gpio[7] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 3.3V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -slow -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -out -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Quad SPI Flash -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -qspi_fbclk -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 3.3V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -out -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -GPIO -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -gpio[9] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 3.3V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -slow -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -enabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -I2C 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -scl -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 3.3V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -slow -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -enabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -I2C 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -sda -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 3.3V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -slow -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -enabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -I2C 1 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -scl -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 3.3V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -slow -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -enabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -I2C 1 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -sda -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 3.3V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -slow -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -enabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -GPIO -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -gpio[14] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 3.3V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -slow -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -enabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -GPIO -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -gpio[15] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 3.3V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -slow -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -enabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Enet 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -tx_clk -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -HSTL 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -out -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Enet 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -txd[0] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -HSTL 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -out -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Enet 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -txd[1] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -HSTL 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -out -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Enet 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -txd[2] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -HSTL 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -out -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Enet 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -txd[3] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -HSTL 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -out -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 21</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Enet 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -tx_ctl -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -HSTL 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -out -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Enet 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -rx_clk -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -HSTL 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -in -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 23</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Enet 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -rxd[0] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -HSTL 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -in -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Enet 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -rxd[1] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -HSTL 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -in -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 25</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Enet 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -rxd[2] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -HSTL 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -in -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 26</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Enet 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -rxd[3] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -HSTL 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -in -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Enet 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -rx_ctl -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -HSTL 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -in -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -USB 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -data[4] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 29</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -USB 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -dir -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -in -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -USB 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -stp -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -out -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 31</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -USB 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -nxt -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -in -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -USB 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -data[0] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 33</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -USB 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -data[1] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 34</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -USB 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -data[2] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 35</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -USB 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -data[3] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 36</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -USB 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -clk -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -in -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 37</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -USB 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -data[5] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 38</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -USB 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -data[6] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 39</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -USB 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -data[7] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 40</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -SD 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -clk -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 41</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -SD 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -cmd -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 42</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -SD 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -data[0] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 43</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -SD 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -data[1] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 44</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -SD 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -data[2] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 45</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -SD 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -data[3] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -fast -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 46</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -USB Reset -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -reset -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -slow -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -enabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -out -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 47</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -SD 0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -cd -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -slow -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -in -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 48</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -UART 1 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -tx -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -slow -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -out -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 49</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -UART 1 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -rx -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -slow -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -in -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 50</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -GPIO -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -gpio[50] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -slow -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 51</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -GPIO -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -gpio[51] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -slow -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 52</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -GPIO -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -gpio[52] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -slow -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>MIO 53</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -GPIO -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -gpio[53] -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -LVCMOS 1.8V -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -slow -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -inout -</TD> -</TR> -</TABLE> -<H2><a name="DDRInfoTab">DDR Memory information</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=10% BGCOLOR=#E0F8F7> -<B>Parameter name</B> -</TD> -<TD width=10% BGCOLOR=#E0F8F7> -<B>Value</B> -</TD> -<TD width=10% BGCOLOR=#E0F8F7> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>Enable DDR</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -1 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Enable DDR Controller of Zynq PS -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>Enable DDR</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -1 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Enable DDR Controller of Zynq PS -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>Memory Part</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -MT41K128M16 JT-125 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> - -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>DRAM bus width</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -32 Bit -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Select the desired data width. Refer to the Thechnical Reference Manual(TRM) for a detailed list of supported DDR data widths -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ECC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Disabled -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -ECC is supported only for data width of 16-bit -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>BURST Length (lppdr only)</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -8 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Select the burst Length. It refers to the amount of data read/written after a read/write command is presented to the controller -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>Internal Vref</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> - -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>Operating Frequency (MHz)</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -525 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Chose the clock period for the desired frequency. The allowed freq range (200 - 667 MHz) is a function of FPGA part and FPGA speed grade -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>HIGH temperature</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Normal (0-85) -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Select the operating temparature -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>DRAM IC bus width</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -16 Bits -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Provide the width of the DRAM chip -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>DRAM Device Capacity</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -2048 MBits -</TD> -<TD width=10% BGCOLOR=#FBF5EF> - -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>Speed Bin</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -DDR3_1066F -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Provide the Speed Bin -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>BANK Address Count</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -3 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Defines the bank to which an active an ACTIVE, READ, WRITE, or Precharge Command is being applied -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ROW Address Count</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -14 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Provide the Row address for ACTIVE commands -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>COLUMN Address Count</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -10 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Provide the Row address for READ/WRITE commands -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>CAS Latency</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -7 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Select the Column Access Strobe (CAS) Latency. It refers to the amount of time it takes for data to appear on the pins of the memory module -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>CAS Write Latency</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -6 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Select the CAS Write Latency -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RAS to CAS Delay</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -7 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Provide the row address to column address delay time. tRCD is t he time required between the memory controller asserting a row address strobe (RAS), and then asserting the column address strobe (CAS) -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RECHARGE Time</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -7 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Precharge Time (tRP) is the number of clock cycles needed o terminate acces s to an open row of memory, and open access to the next row -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>tRC (ns )</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -48.75 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Provide the Row cycle time tRC (ns) -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>tRASmin ( ns )</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -35.0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -tRASmin (ns) is the minimum number of clock cycles required between an Active command and issuing the Precharge command -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>tFAW</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -40.0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -It restricts the number of activates that can be done within a certain window of time -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ADDITIVE Latency</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -0 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -Provide the Additive Latency (ns). Increases the efficiency of the command and data bus for sustainable bandwidths -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>Write levelling</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -1 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> - -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>Read gate</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -1 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> - -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>Read gate</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -1 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> - -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>DQS to Clock delay [0] (ns)</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> --0.073 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -The daly difference of each DQS path delay subtracted from the clock path delay -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>DQS to Clock delay [1] (ns)</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> --0.034 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -The daly difference of each DQS path delay subtracted from the clock path delay -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>DQS to Clock delay [2] (ns)</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> --0.03 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -The daly difference of each DQS path delay subtracted from the clock path delay -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>DQS to Clock delay [3] (ns)</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> --0.082 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -The daly difference of each DQS path delay subtracted from the clock path delay -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>Board delay [0] (ns)</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -0.176 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -The average of the data midpoint delay, of the data delays associated with a byte lane (DDR_DQ, DDR_DM) averaged with the midpoint of the cloc kdelays (DDR_CK, DR_CK_N) -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>Board delay [1] (ns)</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -0.159 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -The average of the data midpoint delay, of the data delays associated with a byte lane (DDR_DQ, DDR_DM) averaged with the midpoint of the cloc kdelays (DDR_CK, DR_CK_N) -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>Board delay [2] (ns)</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -0.162 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -The average of the data midpoint delay, of the data delays associated with a byte lane (DDR_DQ, DDR_DM) averaged with the midpoint of the cloc kdelays (DDR_CK, DR_CK_N) -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>Board delay [3] (ns)</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -0.187 -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -The average of the data midpoint delay, of the data delays associated with a byte lane (DDR_DQ, DDR_DM) averaged with the midpoint of the cloc kdelays (DDR_CK, DR_CK_N) -</TD> -</TR> -</TABLE> -<H2><a name="ClockInfoTab">PS Clocks information</a></H2> -<H2><a name="ClockInfoTab">PS Reference Clock : 50.000000</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=10% BGCOLOR=#E0F8F7> -<B>Peripheral</B> -</TD> -<TD width=10% BGCOLOR=#E0F8F7> -<B>PLL source</B> -</TD> -<TD width=10% BGCOLOR=#E0F8F7> -<B>Frequency (MHz)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>CPU 6x Freq (MHz)</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -ARM PLL -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -650.000000 -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>QSPI Flash Freq (MHz)</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -IO PLL -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -200.000000 -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ENET0 Freq (MHz)</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -IO PLL -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -125.000000 -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>SDIO Freq (MHz)</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -IO PLL -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -50.000000 -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>UART Freq (MHz)</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -IO PLL -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -100.000000 -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>UART Freq (MHz)</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -IO PLL -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -100.000000 -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>TTC0 CLK0 Freq (MHz)</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -CPU_1X -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -108.333336 -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>TTC0 CLK1 Freq (MHz)</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -CPU_1X -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -108.333336 -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>TTC0 CLK2 Freq (MHz)</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -CPU_1X -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -108.333336 -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>FPGA0 Freq (MHz)</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -IO PLL -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -100.000000 -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>FPGA1 Freq (MHz)</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -IO PLL -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -10.000000 -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>FPGA2 Freq (MHz)</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -IO PLL -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -10.000000 -</TD> -</TR> -<TR valign="top"> -<TD width=10% BGCOLOR=#FBF5EF> -<B>FPGA3 Freq (MHz)</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -IO PLL -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -10.000000 -</TD> -</TR> -</TABLE> -<H2><a name="ps7_pll_init_data_3_0">ps7_pll_init_data_3_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_UNLOCK"> -SLCR_UNLOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ARM_PLL_CFG"> -ARM_PLL_CFG -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000110</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL Configuration</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ARM_PLL_CTRL"> -ARM_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ARM_PLL_CTRL"> -ARM_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ARM_PLL_CTRL"> -ARM_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ARM_PLL_CTRL"> -ARM_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ARM_PLL_CTRL"> -ARM_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ARM_CLK_CTRL"> -ARM_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000120</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>CPU Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDR_PLL_CFG"> -DDR_PLL_CFG -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000114</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR PLL Configuration</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDR_PLL_CTRL"> -DDR_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDR_PLL_CTRL"> -DDR_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDR_PLL_CTRL"> -DDR_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDR_PLL_CTRL"> -DDR_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDR_PLL_CTRL"> -DDR_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDR_CLK_CTRL"> -DDR_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000124</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#IO_PLL_CFG"> -IO_PLL_CFG -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000118</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>IO PLL Configuration</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#IO_PLL_CTRL"> -IO_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>IO PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#IO_PLL_CTRL"> -IO_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>IO PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#IO_PLL_CTRL"> -IO_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>IO PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#IO_PLL_CTRL"> -IO_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>IO PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#IO_PLL_CTRL"> -IO_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>IO PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_LOCK"> -SLCR_LOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ps7_pll_init_data_3_0">ps7_pll_init_data_3_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<H1>SLCR SETTINGS</H1> -<H2><a name="SLCR_UNLOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_UNLOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_UNLOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UNLOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write the unlock key, 0xDF0D, to enable writes to the slcr registers. All slcr registers, 0xF800_0000 to 0xF800_0B74, are writeable until locked using the SLCR_LOCK register. A read of this register returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_UNLOCK@0XF8000008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -</TABLE> -<P> -<H1>PLL SLCR REGISTERS</H1> -<H1>ARM PLL INIT</H1> -<H2><a name="ARM_PLL_CFG">Register (<A href=#mod___slcr> slcr </A>)ARM_PLL_CFG</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ARM_PLL_CFG</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000110</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RES</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive the PLL_RES[3:0] input of the PLL to set the PLL loop filter resistor control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_CP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive the PLL_CP[3:0] input of the PLL to set the PLL charge pump control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LOCK_CNT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>177</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>177000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive the LOCK_CNT[9:0] input of the PLL to set the number of clock cycles the PLL needs to have clkref and clkfb aligned with a certain window before syaing locked.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ARM_PLL_CFG@0XF8000110</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffff0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1772c0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ARM PLL Configuration</B> -</TD> -</TR> -</TABLE> -<P> -<H1>UPDATE FB_DIV</H1> -<H2><a name="ARM_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)ARM_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ARM_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_FDIV</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1a</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1a000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provide the feedback divisor for the PLL. Note: Before changing this value, the PLL must first be bypassed and then put into reset mode. Refer to the Zynq-7000 TRM, UG585, Clocks chapter for CP/RES/CNT values for the PLL.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ARM_PLL_CTRL@0XF8000100</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7f000</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1a000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ARM PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>BY PASS PLL</H1> -<H2><a name="ARM_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)ARM_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ARM_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_BYPASS_FORCE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL Bypass override control: PLL_BYPASS_QUAL = 0: 0: enabled, not bypassed. 1: bypassed. PLL_BYPASS_QUAL = 1 (QUAL bit default value): 0: PLL mode is set based on pin strap setting. 1: PLL bypassed regardless of the pin strapping.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ARM_PLL_CTRL@0XF8000100</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ARM PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>ASSERT RESET</H1> -<H2><a name="ARM_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)ARM_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ARM_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PLL reset control: 0: de-assert (PLL operating) 1: assert (PLL held in reset)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ARM_PLL_CTRL@0XF8000100</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ARM PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>DEASSERT RESET</H1> -<H2><a name="ARM_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)ARM_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ARM_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PLL reset control: 0: de-assert (PLL operating) 1: assert (PLL held in reset)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ARM_PLL_CTRL@0XF8000100</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ARM PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>CHECK PLL STATUS</H1> -<H2><a name="PLL_STATUS">Register (<A href=#mod___slcr> slcr </A>)PLL_STATUS</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_STATUS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800010C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ARM_PLL_LOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL lock status: 0: not locked, 1: locked</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>PLL_STATUS@0XF800010C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>tobe</B> -</TD> -</TR> -</TABLE> -<P> -<H1>REMOVE PLL BY PASS</H1> -<H2><a name="ARM_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)ARM_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ARM_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_BYPASS_FORCE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL Bypass override control: PLL_BYPASS_QUAL = 0: 0: enabled, not bypassed. 1: bypassed. PLL_BYPASS_QUAL = 1 (QUAL bit default value): 0: PLL mode is set based on pin strap setting. 1: PLL bypassed regardless of the pin strapping.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ARM_PLL_CTRL@0XF8000100</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ARM PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ARM_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)ARM_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ARM_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000120</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRCSEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Select the source used to generate the CPU clock: 0x: ARM PLL 10: DDR PLL 11: IO PLL This field is reset by POR only.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Frequency divisor for the CPU clock source.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CPU_6OR4XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>24:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>CPU_6x4x Clock control: 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CPU_3OR2XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:25</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>CPU_3x2x Clock control: 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CPU_2XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:26</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>CPU_2x Clock control: 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>CPU_1x Clock control: 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CPU_PERI_CLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>28:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clock active: 0: Clock is disabled 1: Clock is enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ARM_CLK_CTRL@0XF8000120</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1f003f30</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1f000200</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>CPU Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>DDR PLL INIT</H1> -<H2><a name="DDR_PLL_CFG">Register (<A href=#mod___slcr> slcr </A>)DDR_PLL_CFG</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_PLL_CFG</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000114</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RES</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive the PLL_RES[3:0] input of the PLL to set the PLL loop filter resistor control.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_CP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive the PLL_CP[3:0] input of the PLL to set the PLL charge pump control.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LOCK_CNT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1db</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1db000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive the LOCK_CNT[9:0] input of the PLL to set the number of clock cycles the PLL needs to have clkref and clkfb aligned with a certain window before staying locked.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDR_PLL_CFG@0XF8000114</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffff0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1db2c0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR PLL Configuration</B> -</TD> -</TR> -</TABLE> -<P> -<H1>UPDATE FB_DIV</H1> -<H2><a name="DDR_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDR_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_FDIV</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>15</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provide the feedback divisor for the PLL. Note: Before changing this value, the PLL must first be bypassed and then put into reset mode. Refer to the Zynq-7000 TRM, UG585, Clocks chapter for CP/RES/CNT values for the PLL.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDR_PLL_CTRL@0XF8000104</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7f000</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>15000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>BY PASS PLL</H1> -<H2><a name="DDR_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDR_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_BYPASS_FORCE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR PLL Bypass override control: PLL_BYPASS_QUAL = 0 0: enabled, not bypassed. 1: bypassed. PLL_BYPASS_QUAL = 1 (QUAL bit default value) 0: PLL mode is set based on pin strap setting. 1: PLL bypass is enabled regardless of the pin strapping.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDR_PLL_CTRL@0XF8000104</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>ASSERT RESET</H1> -<H2><a name="DDR_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDR_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PLL reset control: 0: de-assert (PLL operating) 1: assert (PLL held in reset)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDR_PLL_CTRL@0XF8000104</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>DEASSERT RESET</H1> -<H2><a name="DDR_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDR_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PLL reset control: 0: de-assert (PLL operating) 1: assert (PLL held in reset)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDR_PLL_CTRL@0XF8000104</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>CHECK PLL STATUS</H1> -<H2><a name="PLL_STATUS">Register (<A href=#mod___slcr> slcr </A>)PLL_STATUS</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_STATUS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800010C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_PLL_LOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR PLL lock status: 0: not locked, 1: locked</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>PLL_STATUS@0XF800010C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>tobe</B> -</TD> -</TR> -</TABLE> -<P> -<H1>REMOVE PLL BY PASS</H1> -<H2><a name="DDR_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDR_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_BYPASS_FORCE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR PLL Bypass override control: PLL_BYPASS_QUAL = 0 0: enabled, not bypassed. 1: bypassed. PLL_BYPASS_QUAL = 1 (QUAL bit default value) 0: PLL mode is set based on pin strap setting. 1: PLL bypass is enabled regardless of the pin strapping.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDR_PLL_CTRL@0XF8000104</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDR_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDR_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000124</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_3XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR_3x Clock control: 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_2XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR_2x Clock control: 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_3XCLK_DIVISOR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Frequency divisor for the ddr_3x clock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_2XCLK_DIVISOR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:26</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fc000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Frequency divisor for the ddr_2x clock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDR_CLK_CTRL@0XF8000124</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff00003</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>c200003</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>IO PLL INIT</H1> -<H2><a name="IO_PLL_CFG">Register (<A href=#mod___slcr> slcr </A>)IO_PLL_CFG</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_PLL_CFG</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000118</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RES</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive the PLL_RES[3:0] input of the PLL to set the PLL loop filter resistor control.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_CP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive the PLL_CP[3:0] input of the PLL to set the PLL charge pump control.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LOCK_CNT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1f4000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive the LOCK_CNT[9:0] input of the PLL to set the number of clock cycles the PLL needs to have clkref and clkfb aligned with a certain window before staying locked.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>IO_PLL_CFG@0XF8000118</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffff0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1f42c0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>IO PLL Configuration</B> -</TD> -</TR> -</TABLE> -<P> -<H1>UPDATE FB_DIV</H1> -<H2><a name="IO_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)IO_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_FDIV</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>14</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provide the feedback divisor for the PLL. Note: Before changing this value, the PLL must first be bypassed and then put into reset mode. Refer to the Zynq-7000 TRM, UG585, Clocks chapter for CP/RES/CNT values for programming the PLL.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>IO_PLL_CTRL@0XF8000108</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7f000</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>14000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>IO PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>BY PASS PLL</H1> -<H2><a name="IO_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)IO_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_BYPASS_FORCE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>IO PLL Bypass override control: PLL_BYPASS_QUAL = 0 0: enabled, not bypassed. 1: bypassed. PLL_BYPASS_QUAL = 1 (QUAL bit default value) 0: PLL mode is set based on pin strap setting. 1: PLL bypass is enabled regardless of the pin strapping.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>IO_PLL_CTRL@0XF8000108</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>IO PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>ASSERT RESET</H1> -<H2><a name="IO_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)IO_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PLL Reset control: 0: de-assert (PLL operating) 1: assert (PLL held in reset)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>IO_PLL_CTRL@0XF8000108</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>IO PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>DEASSERT RESET</H1> -<H2><a name="IO_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)IO_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PLL Reset control: 0: de-assert (PLL operating) 1: assert (PLL held in reset)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>IO_PLL_CTRL@0XF8000108</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>IO PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>CHECK PLL STATUS</H1> -<H2><a name="PLL_STATUS">Register (<A href=#mod___slcr> slcr </A>)PLL_STATUS</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_STATUS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800010C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_PLL_LOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>IO PLL lock status: 0: not locked, 1: locked</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>PLL_STATUS@0XF800010C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>tobe</B> -</TD> -</TR> -</TABLE> -<P> -<H1>REMOVE PLL BY PASS</H1> -<H2><a name="IO_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)IO_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_BYPASS_FORCE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>IO PLL Bypass override control: PLL_BYPASS_QUAL = 0 0: enabled, not bypassed. 1: bypassed. PLL_BYPASS_QUAL = 1 (QUAL bit default value) 0: PLL mode is set based on pin strap setting. 1: PLL bypass is enabled regardless of the pin strapping.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>IO_PLL_CTRL@0XF8000108</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>IO PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>LOCK IT BACK</H1> -<H2><a name="SLCR_LOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_LOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_LOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write the lock key, 0x767B, to write protect the slcr registers: all slcr registers, 0xF800_0000 to 0xF800_0B74, are write protected until the unlock key is written to the SLCR_UNLOCK register. A read of this register returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_LOCK@0XF8000004</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -</TABLE> -<P> -<H2><a name="ps7_clock_init_data_3_0">ps7_clock_init_data_3_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_UNLOCK"> -SLCR_UNLOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DCI_CLK_CTRL"> -DCI_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000128</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI clock control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#GEM0_RCLK_CTRL"> -GEM0_RCLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000138</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>GigE 0 Rx Clock and Rx Signals Select</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#GEM0_CLK_CTRL"> -GEM0_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000140</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>GigE 0 Ref Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#LQSPI_CLK_CTRL"> -LQSPI_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800014C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Quad SPI Ref Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SDIO_CLK_CTRL"> -SDIO_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000150</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SDIO Ref Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#UART_CLK_CTRL"> -UART_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000154</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART Ref Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#PCAP_CLK_CTRL"> -PCAP_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000168</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PCAP Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#FPGA0_CLK_CTRL"> -FPGA0_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000170</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PL Clock 0 Output control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CLK_621_TRUE"> -CLK_621_TRUE -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80001C4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>CPU Clock Ratio Mode select</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#APER_CLK_CTRL"> -APER_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800012C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AMBA Peripheral Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_LOCK"> -SLCR_LOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ps7_clock_init_data_3_0">ps7_clock_init_data_3_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<H1>SLCR SETTINGS</H1> -<H2><a name="SLCR_UNLOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_UNLOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_UNLOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UNLOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write the unlock key, 0xDF0D, to enable writes to the slcr registers. All slcr registers, 0xF800_0000 to 0xF800_0B74, are writeable until locked using the SLCR_LOCK register. A read of this register returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_UNLOCK@0XF8000008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -</TABLE> -<P> -<H1>CLOCK CONTROL SLCR REGISTERS</H1> -<H2><a name="DCI_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)DCI_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000128</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI clock control - 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>34</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3400</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the divisor used to divide the source clock to generate the required generated clock frequency.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the divisor used to divide the source clock to generate the required generated clock frequency. Second cascade divider</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DCI_CLK_CTRL@0XF8000128</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f03f01</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>203401</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DCI clock control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="GEM0_RCLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)GEM0_RCLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GEM0_RCLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000138</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ethernet Controler 0 Rx Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRCSEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Select the source of the Rx clock, control and data signals: 0: MIO 1: EMIO</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>GEM0_RCLK_CTRL@0XF8000138</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>11</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>GigE 0 Rx Clock and Rx Signals Select</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="GEM0_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)GEM0_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GEM0_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000140</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ethernet Controller 0 Reference Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRCSEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the source to generate the reference clock 00x: IO PLL. 010: ARM PLL. 011: DDR PLL 1xx: Ethernet controller 0 EMIO clock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>First divisor for Ethernet controller 0 source clock.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Second divisor for Ethernet controller 0 source clock.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>GEM0_CLK_CTRL@0XF8000140</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f03f71</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>100801</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>GigE 0 Ref Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="LQSPI_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)LQSPI_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LQSPI_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800014C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Quad SPI Controller Reference Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRCSEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Select clock source generate Quad SPI clock: 0x: IO PLL, 10: ARM PLL, 11: DDR PLL</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>500</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Divisor for Quad SPI Controller source clock.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>LQSPI_CLK_CTRL@0XF800014C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f31</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>501</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Quad SPI Ref Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="SDIO_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)SDIO_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SDIO_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000150</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SDIO Controller 0 Clock control. 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SDIO Controller 1 Clock control. 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRCSEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Select the source used to generate the clock. 0x: Source for generated clock is IO PLL. 10: Source for generated clock is ARM PLL. 11: Source for generated clock is DDR PLL.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>14</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1400</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the divisor used to divide the source clock to generate the required generated clock frequency.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SDIO_CLK_CTRL@0XF8000150</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f33</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1401</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SDIO Ref Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="UART_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)UART_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UART_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000154</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART 0 Reference clock control. 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART 1 reference clock active: 0: Clock is disabled 1: Clock is enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRCSEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the PLL source to generate the clock. 0x: IO PLL 10: ARM PLL 11: DDR PLL</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>a</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>a00</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Divisor for UART Controller source clock.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>UART_CLK_CTRL@0XF8000154</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f33</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>a03</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>UART Ref Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>TRACE CLOCK</H1> -<H2><a name="PCAP_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)PCAP_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PCAP_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000168</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clock active: 0: Clock is disabled 1: Clock is enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRCSEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Select the source used to generate the clock: 0x: Source for generated clock is IO PLL. 10: Source for generated clock is ARM PLL. 11: Source for generated clock is DDR PLL.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>500</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the divisor used to divide the source clock to generate the required generated clock frequency.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>PCAP_CLK_CTRL@0XF8000168</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f31</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>501</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PCAP Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="FPGA0_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)FPGA0_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA0_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000170</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRCSEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Select the source used to generate the clock: 0x: Source for generated clock is IO PLL. 10: Source for generated clock is ARM PLL. 11: Source for generated clock is DDR PLL.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>500</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the divisor used to divide the source clock to generate the required generated clock frequency. First cascade divider.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the divisor used to divide the source clock to generate the required generated clock frequency. Second cascade divide</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>FPGA0_CLK_CTRL@0XF8000170</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f03f30</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>200500</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PL Clock 0 Output control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="CLK_621_TRUE">Register (<A href=#mod___slcr> slcr </A>)CLK_621_TRUE</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLK_621_TRUE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80001C4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLK_621_TRUE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Select the CPU clock ratio: (When this register changes, no access are allowed to OCM.) 0: 4:2:1 1: 6:2:1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CLK_621_TRUE@0XF80001C4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>CPU Clock Ratio Mode select</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="APER_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)APER_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>APER_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800012C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DMA_CPU_2XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DMA controller AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>USB0_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>USB controller 0 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>USB1_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>USB controller 1 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GEM0_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Gigabit Ethernet 0 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GEM1_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Gigabit Ethernet 1 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SDI0_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SDIO controller 0 AMBA Clock 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SDI1_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SDIO controller 1 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SPI0_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SPI 0 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SPI1_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SPI 1 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CAN0_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>CAN 0 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CAN1_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>CAN 1 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>I2C0_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>I2C 0 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>I2C1_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>I2C 1 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UART0_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART 0 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UART1_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:21</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART 1 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GPIO_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>22:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>400000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>GPIO AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LQSPI_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:23</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Quad SPI AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SMC_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>24:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SMC AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>APER_CLK_CTRL@0XF800012C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1ffcccd</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1fc044d</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AMBA Peripheral Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>THIS SHOULD BE BLANK</H1> -<H1>LOCK IT BACK</H1> -<H2><a name="SLCR_LOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_LOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_LOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write the lock key, 0x767B, to write protect the slcr registers: all slcr registers, 0xF800_0000 to 0xF800_0B74, are write protected until the unlock key is written to the SLCR_UNLOCK register. A read of this register returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_LOCK@0XF8000004</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -</TABLE> -<P> -<H2><a name="ps7_ddr_init_data_3_0">ps7_ddr_init_data_3_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ddrc_ctrl"> -ddrc_ctrl -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRC Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#Two_rank_cfg"> -Two_rank_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Two Rank Configuration</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#HPR_reg"> -HPR_reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>HPR Queue control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#LPR_reg"> -LPR_reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800600C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>LPR Queue control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#WR_reg"> -WR_reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006010</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>WR Queue control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_param_reg0"> -DRAM_param_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006014</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM Parameters 0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_param_reg1"> -DRAM_param_reg1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006018</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM Parameters 1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_param_reg2"> -DRAM_param_reg2 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800601C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM Parameters 2</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_param_reg3"> -DRAM_param_reg3 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006020</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM Parameters 3</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_param_reg4"> -DRAM_param_reg4 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006024</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM Parameters 4</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_init_param"> -DRAM_init_param -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006028</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM Initialization Parameters</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_EMR_reg"> -DRAM_EMR_reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800602C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM EMR2, EMR3 access</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_EMR_MR_reg"> -DRAM_EMR_MR_reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006030</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM EMR, MR access</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_burst8_rdwr"> -DRAM_burst8_rdwr -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006034</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM Burst 8 read/write</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_disable_DQ"> -DRAM_disable_DQ -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006038</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM Disable DQ</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_addr_map_bank"> -DRAM_addr_map_bank -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800603C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Row/Column address bits</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_addr_map_col"> -DRAM_addr_map_col -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006040</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Column address bits</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_addr_map_row"> -DRAM_addr_map_row -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006044</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Select DRAM row address bits</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_ODT_reg"> -DRAM_ODT_reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006048</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM ODT control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_cmd_timeout_rddata_cpt"> -phy_cmd_timeout_rddata_cpt -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006050</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY command time out and read data capture FIFO</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DLL_calib"> -DLL_calib -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006058</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DLL calibration</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ODT_delay_hold"> -ODT_delay_hold -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800605C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ODT delay and ODT hold</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ctrl_reg1"> -ctrl_reg1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006060</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controller 1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ctrl_reg2"> -ctrl_reg2 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006064</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controller 2</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ctrl_reg3"> -ctrl_reg3 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006068</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controller 3</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ctrl_reg4"> -ctrl_reg4 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800606C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controller 4</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ctrl_reg5"> -ctrl_reg5 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006078</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controller register 5</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ctrl_reg6"> -ctrl_reg6 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800607C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controller register 6</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CHE_T_ZQ"> -CHE_T_ZQ -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060A4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ZQ parameters</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CHE_T_ZQ_Short_Interval_Reg"> -CHE_T_ZQ_Short_Interval_Reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060A8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Misc parameters</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#deep_pwrdwn_reg"> -deep_pwrdwn_reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060AC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Deep powerdown (LPDDR2)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#reg_2c"> -reg_2c -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060B0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Training control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#reg_2d"> -reg_2d -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060B4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Misc Debug</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#dfi_timing"> -dfi_timing -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060B8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DFI timing</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CHE_ECC_CONTROL_REG_OFFSET"> -CHE_ECC_CONTROL_REG_OFFSET -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060C4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ECC error clear</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CHE_CORR_ECC_LOG_REG_OFFSET"> -CHE_CORR_ECC_LOG_REG_OFFSET -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060C8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ECC error correction</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CHE_UNCORR_ECC_LOG_REG_OFFSET"> -CHE_UNCORR_ECC_LOG_REG_OFFSET -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060DC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ECC unrecoverable error status</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CHE_ECC_STATS_REG_OFFSET"> -CHE_ECC_STATS_REG_OFFSET -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060F0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ECC error count</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ECC_scrub"> -ECC_scrub -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060F4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ECC mode/scrub</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_rcvr_enable"> -phy_rcvr_enable -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006114</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Phy receiver enable register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#PHY_Config"> -PHY_Config -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006118</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#PHY_Config"> -PHY_Config -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800611C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#PHY_Config"> -PHY_Config -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006120</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#PHY_Config"> -PHY_Config -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006124</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_init_ratio"> -phy_init_ratio -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800612C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY init ratio register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_init_ratio"> -phy_init_ratio -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006130</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY init ratio register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_init_ratio"> -phy_init_ratio -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006134</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY init ratio register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_init_ratio"> -phy_init_ratio -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006138</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY init ratio register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_rd_dqs_cfg"> -phy_rd_dqs_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006140</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY read DQS configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_rd_dqs_cfg"> -phy_rd_dqs_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006144</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY read DQS configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_rd_dqs_cfg"> -phy_rd_dqs_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006148</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY read DQS configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_rd_dqs_cfg"> -phy_rd_dqs_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800614C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY read DQS configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_wr_dqs_cfg"> -phy_wr_dqs_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006154</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY write DQS configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_wr_dqs_cfg"> -phy_wr_dqs_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006158</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY write DQS configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_wr_dqs_cfg"> -phy_wr_dqs_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800615C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY write DQS configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_wr_dqs_cfg"> -phy_wr_dqs_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006160</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY write DQS configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_we_cfg"> -phy_we_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006168</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY FIFO write enable configuration for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_we_cfg"> -phy_we_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800616C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY FIFO write enable configuration for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_we_cfg"> -phy_we_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006170</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY FIFO write enable configuration for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_we_cfg"> -phy_we_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006174</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY FIFO write enable configuration for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#wr_data_slv"> -wr_data_slv -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800617C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY write data slave ratio config for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#wr_data_slv"> -wr_data_slv -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006180</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY write data slave ratio config for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#wr_data_slv"> -wr_data_slv -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006184</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY write data slave ratio config for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#wr_data_slv"> -wr_data_slv -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006188</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY write data slave ratio config for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#reg_64"> -reg_64 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006190</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Training control 2</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#reg_65"> -reg_65 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006194</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Training control 3</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#page_mask"> -page_mask -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006204</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Page mask</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#axi_priority_wr_port"> -axi_priority_wr_port -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006208</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXI Priority control for write port 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#axi_priority_wr_port"> -axi_priority_wr_port -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800620C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXI Priority control for write port 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#axi_priority_wr_port"> -axi_priority_wr_port -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006210</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXI Priority control for write port 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#axi_priority_wr_port"> -axi_priority_wr_port -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006214</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXI Priority control for write port 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#axi_priority_rd_port"> -axi_priority_rd_port -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006218</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXI Priority control for read port 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#axi_priority_rd_port"> -axi_priority_rd_port -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800621C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXI Priority control for read port 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#axi_priority_rd_port"> -axi_priority_rd_port -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006220</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXI Priority control for read port 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#axi_priority_rd_port"> -axi_priority_rd_port -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006224</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXI Priority control for read port 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#lpddr_ctrl0"> -lpddr_ctrl0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80062A8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>LPDDR2 Control 0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#lpddr_ctrl1"> -lpddr_ctrl1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80062AC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>LPDDR2 Control 1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#lpddr_ctrl2"> -lpddr_ctrl2 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80062B0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>LPDDR2 Control 2</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#lpddr_ctrl3"> -lpddr_ctrl3 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80062B4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>LPDDR2 Control 3</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ddrc_ctrl"> -ddrc_ctrl -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRC Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ps7_ddr_init_data_3_0">ps7_ddr_init_data_3_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<H1>DDR INITIALIZATION</H1> -<H1>LOCK DDR</H1> -<H2><a name="ddrc_ctrl">Register (<A href=#mod___slcr> slcr </A>)ddrc_ctrl</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ddrc_ctrl</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_soft_rstb</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Active low soft reset. Update during normal operation. 0: Resets the controller 1: Takes the controller out of reset. Dynamic Bit Field. Note: Software changes DRAM controller register values only when the controller is in the reset state, except for bit fields that can be dymanically updated.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_powerdown_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controller power down control. Update during normal operation. Enable the controller to powerdown after it becomes idle. Dynamic Bit Field. 0: disable 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_data_bus_width</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR bus width control 00: 32-bit 01: 16-bit 1x: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_burst8_refresh</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Refresh timeout. Programmed value plus one will be the number of refresh timeouts that will be allowed to accumulate before traffic is blocked and the refreshes are forced to execute. Closing pages to perform a refresh is a one-time penalty that must be paid for each group of refreshes; therefore, performing refreshes in a burst reduces the per-refresh penalty of these page closings. Higher numbers for burst_of_N_refresh slightly increases utilization; lower numbers decreases the worst-case latency associated with refreshes. 0: single refresh 1: burst-of-2 ... 7: burst-of-8 refresh</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rdwr_idle_gap</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When the preferred transaction store is empty for this many clock cycles, switch to the alternate transaction store if it is non-empty. The read transaction store (both high and low priority) is the default preferred transaction store and the write transaction store is the alternate store. When 'Prefer write over read' is set this is reversed.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_rd_bypass</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present in designs supporting read bypass. For Debug only. 0: Do not disable bypass path for high priority read page hits. 1: disable bypass path for high priority read page hits.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_act_bypass</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present in designs supporting activate bypass. For Debug only. 0: Do not disable bypass path for high priority read activates. 1: disable bypass path for high priority read activates.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_auto_refresh</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable auto-refresh. 0: do not disable auto-refresh. 1: disable auto-refresh. Dynamic Bit Field. Note: When this transitions from 0 to 1, any pending refreshes will be immediately scheduled by the controller.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ddrc_ctrl@0XF8006000</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRC Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="Two_rank_cfg">Register (<A href=#mod___slcr> slcr </A>)Two_rank_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Two_rank_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_rfc_nom_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7f</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tREFI - Average time between refreshes. Unit: in multiples of 32 clocks. DRAM related. Default value is set for DDR3. Dynamic Bit Field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_reg_ddrc_active_ranks</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_cs_bit0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present for multi-rank configurations. Selects the address bit used as rank address bit 0. Valid Range: 0 to 25, and 31 Internal Base: 9. The selected address bit is determined by adding the Internal Base to the value of this field. If set to 31, rank address bit 0 is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>Two_rank_cfg@0XF8006004</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>107f</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Two Rank Configuration</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="HPR_reg">Register (<A href=#mod___slcr> slcr </A>)HPR_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>HPR_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_hpr_min_non_critical_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of counts that the HPR queue is guaranteed to be non-critical (1 count = 32 DDR clocks).</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_hpr_max_starve_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of clocks that the HPR queue can be starved before it goes critical. Unit: 32 clocks</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_hpr_xact_run_length</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3c00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3c00000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of transactions that will be serviced once the HPR queue goes critical is the smaller of this number and the number of transactions available.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>HPR_reg@0XF8006008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3c0780f</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>HPR Queue control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="LPR_reg">Register (<A href=#mod___slcr> slcr </A>)LPR_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LPR_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800600C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_lpr_min_non_critical_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of clocks that the LPR queue is guaranteed to be non-critical. Unit: 32 clocks</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_lpr_max_starve_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of clocks that the LPR queue can be starved before it goes critical. Unit: 32 clocks</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_lpr_xact_run_length</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3c00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of transactions that will be serviced once the LPR queue goes critical is the smaller of this number and the number of transactions available</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>LPR_reg@0XF800600C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2001001</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>LPR Queue control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="WR_reg">Register (<A href=#mod___slcr> slcr </A>)WR_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>WR_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006010</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_w_min_non_critical_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of clock cycles that the WR queue is guaranteed to be non-critical.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_w_xact_run_length</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of transactions that will be serviced once the WR queue goes critical is the smaller of this number and the number of transactions available</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_w_max_starve_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of clocks that the Write queue can be starved before it goes critical. Unit: 32 clocks. FOR PERFORMANCE ONLY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>WR_reg@0XF8006010</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>14001</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>WR Queue control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_param_reg0">Register (<A href=#mod___slcr> slcr </A>)DRAM_param_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_param_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006014</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_rc</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1a</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1a</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tRC - Min time between activates to same bank (spec: 65 ns for DDR2-400 and smaller for faster parts). DRAM Related. Default value is set for DDR3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_rfc_min</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3fc0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>54</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1500</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tRFC(min) - Minimum time from refresh to refresh or activate (spec: 75nS to 195nS). DRAM Related. Default value is set for DDR3. Dynamic Bit Field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_post_selfref_gap_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1fc000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Minimum time to wait after coming out of self refresh before doing anything. This must be bigger than all the constraints that exist. (spec: Maximum of tXSNR and tXSRD and tXSDLL which is 512 clocks). Unit: in multiples of 32 clocks. DRAM Related</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_param_reg0@0XF8006014</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>4151a</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM Parameters 0</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_param_reg1">Register (<A href=#mod___slcr> slcr </A>)DRAM_param_reg1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_param_reg1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006018</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_wr2pre</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>12</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Minimum time between write and precharge to same bank DDR and DDR3: WL + BL/2 + tWR LPDDR2: WL + BL/2 + tWR + 1 Unit: Clocks where, WL: write latency. BL: burst length. This must match the value programmed in the BL bit of the mode register to the DRAM. BST is not supported at present. tWR: write recovery time. This comes directly from the DRAM specs.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_powerdown_to_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>After this many clocks of NOP or DESELECT the controller will put the DRAM into power down. This must be enabled in the Master Control Register. Unit: Multiples of 32 clocks.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_faw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fc00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>15</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5400</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tFAW - At most 4 banks must be activated in a rolling window of tFAW cycles. Unit: clocks. DRAM Related.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_ras_max</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>23</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>230000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tRAS(max) - Maximum time between activate and precharge to same bank. Maximum time that a page can be kept open (spec is 70 us). If this is zero. The page is closed after each transaction. Unit: Multiples of 1024 clocks DRAM related.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_ras_min</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>13</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4c00000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tRAS(min) - Minimum time between activate and precharge to the same bank (spec is 45 ns). Unit: clocks DRAM related. Default value is set for DDR3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_cke</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Minimum number of cycles of CKE HIGH/LOW during power down and self refresh. DDR2 and DDR3: Set this to tCKE value. LPDDR2: Set this to the larger of tCKE or tCKESR. Unit: clocks.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_param_reg1@0XF8006018</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f7ffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>44e354d2</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM Parameters 1</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_param_reg2">Register (<A href=#mod___slcr> slcr </A>)DRAM_param_reg2</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_param_reg2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800601C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_write_latency</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Time from write command to write data on DDRC to PHY Interface. (PHY adds an extra flop delay on the write data path; hence this value is one less than the write latency of the DRAM device itself). DDR2 and DDR3: WL -1 LPDDR2: WL Where WL: Write Latency of DRAM DRAM related. In non-LPDDR mode, the minimum DRAM Write Latency (DDR2) supported is 3. In LPDDR mode, the required DRAM Write Latency of 1 is supported. Since write latency (CWL) min is 3, and DDR2 CWL is CL-1, the min (DDR2) CL supported is 4</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rd2wr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Minimum time from read command to write command. Include time for bus turnaround and all per-bank, per-rank, and global constraints. DDR2 and DDR3: RL + BL/2 + 2 - WL LPDDR2: RL + BL/2 + RU (tDQSCKmax / tCK) + 1 - WL Write Pre-amble and DQ/DQS jitter timer is included in the above equation. DRAM RELATED.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_wr2rd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Minimum time from write command to read command. Includes time for bus turnaround and recovery times and all per-bank, per-rank, and global constraints. DDR2 and DDR3: WL + tWTR + BL/2 LPDDR2: WL + tWTR + BL/2 + 1 Unit: clocks. Where, WL: Write latency, BL: burst length. This should match the value. Programmed in the BL bit of the mode register to the DRAM. tWTR: internal WRITE to READ command delay. This comes directly from the DRAM specs.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_xp</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tXP: Minimum time after power down exit to any operation. DRAM related.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_pad_pd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>22:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>700000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If pads have a power-saving mode, this is the greater of the time for the pads to enter power down or the time for the pads to exit power down. Used only in non-DFI designs. Unit: clocks.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rd2pre</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:23</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f800000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Minimum time from read to precharge of same bank DDR2: AL + BL/2 + max(tRTP, 2) - 2 DDR3: AL + max (tRTP, 4) LPDDR2: BL/2 + tRTP - 1 AL: Additive Latency; BL: DRAM Burst Length; tRTP: value from spec. DRAM related.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_rcd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>70000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tRCD - AL Minimum time from activate to read or write command to same bank Min value for this is 1. AL = Additive Latency. DRAM Related.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_param_reg2@0XF800601C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>720238e5</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM Parameters 2</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_param_reg3">Register (<A href=#mod___slcr> slcr </A>)DRAM_param_reg3</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_param_reg3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006020</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_ccd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tCCD - Minimum time between two reads or two writes (from bank a to bank b) is this value + 1. DRAM related.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_rrd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tRRD - Minimum time between activates from bank A to bank B. (spec: 10ns or less) DRAM RELATED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_refresh_margin</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Issue critical refresh or page close this many cycles before the critical refresh or page timer expires. It is recommended that this not be changed from the default value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_rp</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tRP - Minimum time from precharge to activate of same bank. DRAM RELATED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_refresh_to_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If the refresh timer (tRFC_nom, as known as tREFI) has expired at least once, but it has not expired burst_of_N_refresh times yet, then a 'speculative refresh' may be performed. A speculative refresh is a refresh performed at a time when refresh would be useful, but before it is absolutely required. When the DRAM bus is idle for a period of time determined by this refresh idle timeout and the refresh timer has expired at least once since the last refresh, then a 'speculative refresh' will be performed. Speculative refreshes will continue successively until there are no refreshes pending or until new reads or writes are issued to the controller. Dynamic Bit Field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mobile</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>22:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: DDR2 or DDR3 device. 1: LPDDR2 device.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_en_dfi_dram_clk_disable</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:23</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the assertion of ddrc_dfi_dram_clk_disable. In DDR2/DDR3, only asserted in Self Refresh. In mDDR/LPDDR2, can be asserted in following: - during normal operation (Clock Stop), - in Power Down - in Self Refresh - In Deep Power Down</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_read_latency</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>28:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Non-LPDDR2: not used. DDR2 and DDR3: Set to Read Latency, RL. Time from Read command to Read data on DRAM interface. It is used to calculate when DRAM clock may be stopped. Unit: DDR clock.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_mode_ddr1_ddr2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>29:29</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>unused</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_pad_pd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>30:30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: disable the pad power down feature 0: Enable the pad power down feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_param_reg3@0XF8006020</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7fdffffc</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>270872d0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM Parameters 3</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_param_reg4">Register (<A href=#mod___slcr> slcr </A>)DRAM_param_reg4</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_param_reg4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006024</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_en_2t_timing_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: DDRC will use 2T timing 0: DDRC will use 1T timing</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_prefer_write</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: Bank selector prefers writes over reads</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mr_wr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>A low to high signal on this signal will do a mode register write or read. Controller will accept this command, if this signal is detected high and "ddrc_reg_mr_wr_busy" is detected low.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mr_addr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>180</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2 and DDR3: Mode register address. LPDDR2: not used. 00: MR0 01: MR1 10: MR2 11: MR3</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mr_data</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>24:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1fffe00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2 and DDR3: Mode register write data. LPDDR2: The 16 bits are interpreted for reads and writes: Reads: MR Addr[7:0], Don't Care[7:0]. Writes: MR Addf[7:0], MR Data[7:0].</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ddrc_reg_mr_wr_busy</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:25</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Core must initiate a MR write / read operation only if this signal is low. This signal goes high in the clock after the controller accepts the write / read request. It goes low when (i) MR write command has been issued to the DRAM (ii) MR Read data has been returned to Controller. Any MR write / read command that is received when 'ddrc_reg_mr_wr_busy' is high is not accepted. 0: Indicates that the core can initiate a mode register write / read operation. 1: Indicates that mode register write / read operation is in progress.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mr_type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:26</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Indicates whether the Mode register operation is read or write 0: write 1: read</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mr_rdata_valid</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This bit indicates whether the Mode Register Read Data present at address 0xA9 is valid or not. This bit is 0 by default. This bit will be cleared (0), whenever a Mode Register Read command is issued. This bit will be set to 1, when the Mode Register Read Data is written to register 0xA9.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_param_reg4@0XF8006024</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffffc3</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM Parameters 4</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_init_param">Register (<A href=#mod___slcr> slcr </A>)DRAM_init_param</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_init_param</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006028</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_final_wait_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Cycles to wait after completing the DRAM init sequence before starting the dynamic scheduler. Units are in counts of a global timer that pulses every 32 clock cycles. Default value is set for DDR3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_pre_ocd_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>780</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Wait period before driving the 'OCD Complete' command to DRAM. Units are in counts of a global timer that pulses every 32 clock cycles. There is no known spec requirement for this. It may be set to zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_mrd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tMRD - Cycles between Load Mode commands. DRAM related. Default value is set for DDR3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_init_param@0XF8006028</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2007</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM Initialization Parameters</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_EMR_reg">Register (<A href=#mod___slcr> slcr </A>)DRAM_EMR_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_EMR_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800602C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_emr2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2: Value loaded into EMR2 register DDR3: Value loaded into MR2 register LPDDR2: Value loaded into MR3 register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_emr3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2: Value loaded into EMR3 register DDR3: Value loaded into MR3 register. Set Bit[2:0] to 3'b000. These bits are set appropriately by the Controller during Read Data eye training and Read DQS gate leveling. LPDDR2: Unused</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_EMR_reg@0XF800602C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>8</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM EMR2, EMR3 access</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_EMR_MR_reg">Register (<A href=#mod___slcr> slcr </A>)DRAM_EMR_MR_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_EMR_MR_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006030</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>930</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>930</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2: Value loaded into MR register. (Bit[8] is for DLL and the setting here is ignored. Controller sets this bit appropriately DDR3: Value loaded into MR0 register. LPDDR2: Value loaded into MR1 register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_emr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2: Value loaded into EMR1register. (Bits[9:7] are for OCD and the setting in this reg is ignored. Controller sets this bits appropriately during initialization DDR3: Value loaded into MR1 register. Set Bit[7] to 0. This bit is set appropriately by the Controller during Write Leveling LPDDR2: Value loaded into MR2 register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_EMR_MR_reg@0XF8006030</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>40930</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM EMR, MR access</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_burst8_rdwr">Register (<A href=#mod___slcr> slcr </A>)DRAM_burst8_rdwr</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_burst8_rdwr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006034</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_burst_rdwr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the burst size used to access the DRAM. This must match the BL mode register setting in the DRAM. 0010: Burst length of 4 0100: Burst length of 8 1000: Burst length of 16 (LPDDR2 with ___-bit data) All other values are reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_pre_cke_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>167</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1670</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clock cycles to wait after a DDR software reset before driving CKE high to start the DRAM initialization sequence. Units: 1024 clock cycles. DDR2 Specifications typically require this to be programmed for a delay of >= 200 uS. LPDDR2 - tINIT0 of 20 mS (max) + tINIT1 of 100 nS (min)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_post_cke_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clock cycles to wait after driving CKE high to start the DRAM initialization sequence. Units: 1024 clocks. DDR2 typically require a 400 ns delay, requiring this value to be programmed to 2 at all clock speeds. LPDDR2 - Typically require this to be programmed for a delay of 200 us.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_burstchop</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>28:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Feature not supported. When 1, Controller is out in burstchop mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_burst8_rdwr@0XF8006034</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>13ff3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>11674</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM Burst 8 read/write</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_disable_DQ">Register (<A href=#mod___slcr> slcr </A>)DRAM_disable_DQ</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_disable_DQ</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006038</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_force_low_pri_n</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Read Transaction Priority disable. 0: read transactions forced to low priority (turns off Bypass). 1: HPR reads allowed if enabled in the AXI priority read registers.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_dq</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When 1, DDRC will not de-queue any transactions from the CAM. Bypass will also be disabled. All transactions will be queued in the CAM. This is for debug only; no reads or writes are issued to DRAM as long as this is asserted. Dynamic Bit Field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_disable_DQ@0XF8006038</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM Disable DQ</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_addr_map_bank">Register (<A href=#mod___slcr> slcr </A>)DRAM_addr_map_bank</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_addr_map_bank</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800603C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_bank_b0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the address bits used as bank address bit 0. Valid Range: 0 to 14. Internal Base: 5. The selected address bit for each of the bank address bits is determined by adding the Internal Base to the value of this field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_bank_b1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>70</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the address bits used as bank address bit 1. Valid Range: 0 to 14; Internal Base: 6. The selected address bit for each of the bank address bits is determined by adding the Internal Base to the value of this field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_bank_b2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>700</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the AXI address bit used as bank address bit 2. Valid range 0 to 14, and 15. Internal Base: 7. The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, bank address bit 2 is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bits used as column address bits 6. Half bus width mode: Selects the address bits used as column address bits 7. Valid range is 0-7. Internal Base 8. The selected address bit for each of the column address bits is determined by adding the Internal Base to the value of this field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bits used as column address bits 7. Half bus width mode: Selects the address bits used as column address bits 8. Valid range is 0-7. Internal Base 9. The selected address bit for each of the column address bits is determined by adding the Internal Base to the value of this field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_addr_map_bank@0XF800603C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>777</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Row/Column address bits</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_addr_map_col">Register (<A href=#mod___slcr> slcr </A>)DRAM_addr_map_col</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_addr_map_col</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006040</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bit used as column address bit 3. Half bus width mode: Selects the address bit used as column address bit 4. Valid Range: 0 to 7. Internal Base: 5 The selected address bit is determined by adding the Internal Base to the value of this field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bit used as column address bit 4. Half bus width mode: Selects the address bit used as column address bit 5. Valid Range: 0 to 7 Internal Base: 6 The selected address bit is determined by adding the Internal Base to the value of this field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bit used as column address bit 5. Half bus width mode: Selects the address bit used as column address bits 6. Valid Range: 0 to 7. Internal Base: 7. The selected address bit for each of the column address bits is determined by adding the Internal Base to the value of this field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bit used as column address bit 8. Half bus width mode: Selects the address bit used as column address bit 9. Valid Range: 0 to 7, and 15. Internal Base: 10. The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, this column address bit is set to 0. Note: Per JEDEC spec, column address bit 10 is reserved for indicating auto-precharge, and hence no source address bit can be mapped to column address bit 10.In LPDDR2, there is a dedicated bit for auto-precharge in the CA bus, and hence column bit 10 is used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b8</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bit used as column address bit 9. Half bus width mode: Selects the address bit used as column address bit 11. (Column address bit 10 in LPDDR2 mode) Valid Range: 0 to 7, and 15 Internal Base: 11 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, this column address bit is set to 0. Note: Per JEDEC spec, column address bit 10 is reserved for indicating auto-precharge, and hence no source address bit can be mapped to column address bit 10. In LPDDR2, there is a dedicated bit for auto-precharge in the CA bus, and hence column bit 10 is used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b9</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f00000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bit used as column address bit 11. (Column address bit 10 in LPDDR2 mode) Half bus width mode: Selects the address bit used as column address bit 12. (Column address bit 11 in LPDDR2 mode) Valid Range: 0 to 7, and 15 Internal Base: 12 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, this column address bit is set to 0. Note: Per JEDEC DDR2 spec, column address bit 10 is reserved for indicating auto-precharge, and hence no source address bit can be mapped to column address bit 10. In LPDDR2, there is a dedicated bit for auto-precharge in the CA bus, and hence column bit 10 is used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b10</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bit used as column address bit 12. (Column address bit 11 in LPDDR2 mode) Half bus width mode: Selects the address bit used as column address bit 13. (Column address bit 12 in LPDDR2 mode) Valid Range: 0 to 7, and 15. Internal Base: 13 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, this column address bit is set to 0. Note: Per JEDEC DDR2 spec, column address bit 10 is reserved for indicating auto-precharge, and hence no source address bit can be mapped to column address bit 10. In LPDDR2, there is a dedicated bit for auto-precharge in the CA bus, and hence column bit 10 is used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b11</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f0000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bit used as column address bit 13. (Column address bit 12 in LPDDR2 mode) Half bus width mode: Unused. To make it unused, this should be set to 15. (Column address bit 13 in LPDDR2 mode) Valid Range: 0 to 7, and 15. Internal Base: 14. The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, this column address bit is set to 0. Note: Per JEDEC DDR2 spec, column address bit 10 is reserved for indicating auto-precharge, and hence no source address bit can be mapped to column address bit 10. In LPDDR2, there is a dedicated bit for auto-precharge in the CA bus, and hence column bit 10 is used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_addr_map_col@0XF8006040</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>fff00000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Column address bits</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_addr_map_row">Register (<A href=#mod___slcr> slcr </A>)DRAM_addr_map_row</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_addr_map_row</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006044</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_row_b0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the AXI address bits used as row address bit 0. Valid Range: 0 to 11. Internal Base: 9 The selected address bit for each of the row address bits is determined by adding the Internal Base to the value of this field</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_row_b1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the AXI address bits used as row address bit 1. Valid Range: 0 to 11. Internal Base: 10 The selected address bit for each of the row address bits is determined by adding the Internal Base to the value of this field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_row_b2_11</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the AXI address bits used as row address bits 2 to 11. Valid Range: 0 to 11. Internal Base: 11 (for row address bit 2) to 20 (for row address bit 11) The selected address bit for each of the row address bits is determined by adding the Internal Base to the value of this field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_row_b12</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the AXI address bit used as row address bit 12. Valid Range: 0 to 8, Internal Base: 21 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, row address bit 12 is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_row_b13</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the AXI address bit used as row address bit 13. Valid Range: 0 to 7, Internal Base: 22 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, row address bit 13 is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_row_b14</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f00000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects theAXI address bit used as row address bit 14. Valid Range: 0 to 6, Internal Base: 23 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, row address bit 14 is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_row_b15</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the AXI address bit used as row address bit 15. Valid Range: 0 to 5, Internal Base: 24 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, row address bit 15 is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_addr_map_row@0XF8006044</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ff66666</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Select DRAM row address bits</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_ODT_reg">Register (<A href=#mod___slcr> slcr </A>)DRAM_ODT_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_ODT_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006048</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_local_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Value to drive on the 2-bit local_odt PHY outputs when output enable is not asserted and a read is in progress (where 'in progress' is defined as after a read command is issued and until all read data has been returned all the way to the controller.) Typically this is set to the value required to enable termination at the desired strength for read usage.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_local_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Value to drive on the 2-bit local_odt PHY outputs when write levelling is enabled for DQS.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_idle_local_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>30000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>30000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Value to drive on the 2-bit local_odt PHY outputs when output enable is not asserted and a read is not in progress. Typically this is the value required to disable termination to save power when idle.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_reg_ddrc_rank0_wr_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>38</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_reg_ddrc_rank0_rd_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_ODT_reg@0XF8006048</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f03f</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3c008</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM ODT control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_cmd_timeout_rddata_cpt">Register (<A href=#mod___slcr> slcr </A>)phy_cmd_timeout_rddata_cpt</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_cmd_timeout_rddata_cpt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006050</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_cmd_to_data</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Not used in DFI PHY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_cmd_to_data</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Not used in DFI PHY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rdc_we_to_re_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This register value + 1 give the number of clock cycles between writing into the Read Capture FIFO and the read operation. The setting of this register determines the read data timing and depends upon total delay in the system for read operation which include fly-by delays, trace delay, clkout_invert etc. This is used only if reg_phy_use_fixed_re=1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rdc_fifo_rst_disable</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When 1, disable counting the number of times the Read Data Capture FIFO has been reset when the FIFO was not empty.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_use_fixed_re</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When 1: PHY generates FIFO read enable after fixed number of clock cycles as defined by reg_phy_rdc_we_to_re_delay[3:0]. When 0: PHY uses the not_empty method to do the read enable generation. Note: This port must be set HIGH during training/leveling process i.e. when ddrc_dfi_wrlvl_en/ ddrc_dfi_rdlvl_en/ ddrc_dfi_rdlvl_gate_en port is set HIGH.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rdc_fifo_rst_err_cnt_clr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clear/reset for counter rdc_fifo_rst_err_cnt[3:0]. 0: no clear, 1: clear. Note: This is a synchronous dynamic signal that must have timing closed.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dis_phy_ctrl_rstn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the reset from Phy Ctrl macro. 1: PHY Ctrl macro reset port is always HIGH 0: PHY Ctrl macro gets power on reset.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_clk_stall_level</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: stall clock, for DLL aging control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_num_of_dq0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This register value determines register determines the number of samples used for each ratio increment during Gate Training. Num_of_iteration = reg_phy_gatelvl_num_of_dq0 + 1 The recommended value for this register is 8. Accuracy is better with higher value, but this will cause leveling to run longer.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_num_of_dq0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>70000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This register value determines register determines the number of samples used for each ratio increment during Write Leveling. Num_of_iteration = reg_phy_wrlvl_num_of_dq0 + 1 The recommended value for this register is 8. Accuracy is better with higher value, but this will cause leveling to run longer.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_cmd_timeout_rddata_cpt@0XF8006050</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ff0f8fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>77010800</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY command time out and read data capture FIFO</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DLL_calib">Register (<A href=#mod___slcr> slcr </A>)DLL_calib</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DLL_calib</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006058</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_dll_calib</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When 1, disable dll_calib generated by the controller. The core should issue the dll_calib signal using co_gs_dll_calib input. This input is changeable on the fly. When 0, controller will issue dll_calib periodically</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DLL_calib@0XF8006058</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DLL calibration</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ODT_delay_hold">Register (<A href=#mod___slcr> slcr </A>)ODT_delay_hold</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ODT_delay_hold</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800605C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rd_odt_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UNUSED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_wr_odt_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The delay, in clock cycles, from issuing a write command to setting ODT values associated with that command. ODT setting should remain constant for the entire time that DQS is driven by the controller. The suggested value for DDR2 is WL - 5 and for DDR3 is 0. WL is Write latency. DDR2 ODT has a 2-cycle on-time delay and a 2.5-cycle off-time delay. ODT is not applicable to LPDDR2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rd_odt_hold</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Unused</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_wr_odt_hold</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Cycles to hold ODT for a Write Command. When 0x0, ODT signal is ON for 1 cycle. When 0x1, it is ON for 2 cycles, etc. The values to program in different modes are : DRAM Burst of 4 -2, DRAM Burst of 8 -4</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ODT_delay_hold@0XF800605C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>5003</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ODT delay and ODT hold</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ctrl_reg1">Register (<A href=#mod___slcr> slcr </A>)ctrl_reg1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ctrl_reg1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006060</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_pageclose</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If true, bank will be closed and kept closed if no transactions are available for it. If false, bank will remain open until there is a need to close it (to open a different page, or for page timeout or refresh timeout.) This does not apply when auto-refresh is used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_lpr_num_entries</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7e</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3e</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of entries in the low priority transaction store is this value plus 1. In this design, by default all read ports are treated as low priority and hence the value of 0x1F. The hpr_num_entries is 32 minus this value. Bit [6] is ignored.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_auto_pre_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When set, most reads and writes will be issued with auto-precharge. (Exceptions can be made for collision cases.)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_refresh_update_level</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Toggle this signal to indicate that refresh register(s) have been updated. The value will be automatically updated when exiting soft reset. So it does not need to be toggled initially. Dynamic Bit Field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_wc</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable Write Combine: 0: enable 1: disable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_collision_page_opt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When this is set to 0, auto-precharge will be disabled for the flushed command in a collision case. Collision cases are write followed by read to same address, read followed by write to same address, or write followed by write to same address with DIS_WC bit = 1 (where 'same address' comparisons exclude the two address bits representing critical word).</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_selfref_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If 1, then the controller will put the DRAM into self refresh when the transaction store is empty. Dynamic Bit Field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ctrl_reg1@0XF8006060</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>17ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3e</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Controller 1</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ctrl_reg2">Register (<A href=#mod___slcr> slcr </A>)ctrl_reg2</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ctrl_reg2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006064</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_go2critical_hysteresis</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1fe0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Describes the number of cycles that co_gs_go2critical_rd or co_gs_go2critical_wr must be asserted before the corresponding queue moves to the 'critical' state in the DDRC. The arbiter controls the co_gs_go2critical_* signals; it is designed for use with this hysteresis field set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_go2critical_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Keep reg_ddrc_go2critical_wr and reg_ddrc_go2critical_rd signals going to DDRC at 0. 1: Set reg_ddrc_go2critical_wr and reg_ddrc_go2critical_rd signals going to DDRC based on Urgent input coming from AXI master.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ctrl_reg2@0XF8006064</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>21fe0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>20000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Controller 2</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ctrl_reg3">Register (<A href=#mod___slcr> slcr </A>)ctrl_reg3</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ctrl_reg3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006068</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_wrlvl_ww</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>41</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>41</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2: not applicable. LPDDR2 and DDR3: Write leveling write-to-write delay. Specifies the minimum number of clock cycles from the assertion of a ddrc_dfi_wrlvl_strobe signal to the next ddrc_dfi_wrlvl_strobe signal. Only applicable when connecting to PHYs operating in PHY RdLvl Evaluation mode. Recommended value is: (RL + reg_phy_rdc_we_to_re_delay + 50)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rdlvl_rr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>41</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2 and LPDDR2: not applicable. DDR3: Read leveling read-to-read delay. Specifies the minimum number of clock cycles from the assertion of a read command to the next read command. Only applicable when connecting to PHYs operating in PHY RdLvl Evaluation mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_t_wlmrd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>28</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>280000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2 and LPDDR2: not applicable. DDR3: First DQS/DQS# rising edge after write leveling mode is programmed. This is same as the tMLRD value from the DRAM spec.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ctrl_reg3@0XF8006068</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>284141</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Controller 3</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ctrl_reg4">Register (<A href=#mod___slcr> slcr </A>)ctrl_reg4</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ctrl_reg4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800606C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>dfi_t_ctrlupd_interval_min_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This is the minimum amount of time between Controller initiated DFI update requests (which will be executed whenever the controller is idle). Set this number higher to reduce the frequency of update requests, which can have a small impact on the latency of the first read request when the controller is idle. Units: 1024 clocks</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>dfi_t_ctrlupd_interval_max_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>16</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This is the maximum amount of time between Controller initiated DFI update requests. This timer resets with each update request; when the timer expires, traffic is blocked for a few cycles. PHY can use this idle time to recalibrate the delay lines to the DLLs. The DLL calibration is also used to reset PHY FIFO pointers in case of data capture errors. Updates are required to maintain calibration over PVT, but frequent updates may impact performance. Units: 1024 clocks</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ctrl_reg4@0XF800606C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1610</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Controller 4</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ctrl_reg5">Register (<A href=#mod___slcr> slcr </A>)ctrl_reg5</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ctrl_reg5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006078</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_t_ctrl_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies the number of DFI clock cycles after an assertion or deassertion of the DFI control signals that the control signals at the PHY-DRAM interface reflect the assertion or de-assertion. If the DFI clock and the memory clock are not phase-aligned, this timing parameter should be rounded up to the next integer value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_t_dram_clk_disable</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies the number of DFI clock cycles from the assertion of the ddrc_dfi_dram_clk_disable signal on the DFI until the clock to the DRAM memory devices, at the PHY-DRAM boundary, maintains a low value. If the DFI clock and the memory clock are not phase aligned, this timing parameter should be rounded up to the next integer value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_t_dram_clk_enable</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies the number of DFI clock cycles from the de-assertion of the ddrc_dfi_dram_clk_disable signal on the DFI until the first valid rising edge of the clock to the DRAM memory devices at the PHY-DRAM boundary. If the DFI clock and the memory clock are not phase aligned, this timing parameter should be rounded up to the next integer value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_cksre</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This is the time after Self Refresh Entry that CK is maintained as a valid clock. Specifies the clock disable delay after SRE. Recommended settings: LPDDR2: 2 DDR2: 1 DDR3: tCKSRE</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_cksrx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This is the time before Self Refresh Exit that CK is maintained as a valid clock before issuing SRX. Specifies the clock stable time before SRX. Recommended settings: LPDDR2: 2 DDR2: 1 DDR3: tCKSRX</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_ckesr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>400000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Minimum CKE low width for Self Refresh entry to exit Timing in memory clock cycles. Recommended settings: LPDDR2: tCKESR DDR2: tCKE DDR3: tCKE+1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ctrl_reg5@0XF8006078</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>466111</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Controller register 5</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ctrl_reg6">Register (<A href=#mod___slcr> slcr </A>)ctrl_reg6</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ctrl_reg6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800607C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_ckpde</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This is the time after Power Down Entry that CK is maintained as a valid clock. Specifies the clock disable delay after PDE. Recommended setting for LPDDR2: 2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_ckpdx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This is the time before Power Down Exit that CK is maintained as a valid clock before issuing PDX. Specifies the clock stable time before PDX. Recommended setting for LPDDR2: 2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_ckdpde</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This is the time after Deep Power Down Entry that CK is maintained as a valid clock. Specifies the clock disable delay after DPDE. Recommended setting for LPDDR2: 2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_ckdpdx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This is the time before Deep Power Down Exit that CK is maintained as a valid clock before issuing DPDX. Specifies the clock stable time before DPDX. Recommended setting for LPDDR2: 2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_ckcsx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>30000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This is the time before Clock Stop Exit that CK is maintained as a valid clock before issuing DPDX. Specifies the clock stable time before next command after Clock Stop Exit. Recommended setting for LPDDR2: tXP + 2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ctrl_reg6@0XF800607C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>32222</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Controller register 6</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="CHE_T_ZQ">Register (<A href=#mod___slcr> slcr </A>)CHE_T_ZQ</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHE_T_ZQ</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060A4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_auto_zq</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1=disable controller generation of ZQCS command. Co_gs_zq_calib_short can be used instead to control ZQ calibration commands. 0=internally generate ZQCS commands based on reg_ddrc_t_zq_short_interval_x1024 This is only present for implementations supporting DDR3 and LPDDR2 devices.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_ddr3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Indicates operating in DDR2/DDR3 mode. Default value is set for DDR3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_mod</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffc</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Mode register set command update delay (minimum d'128)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_zq_long_nop</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2: not applicable. LPDDR2 and DDR3: Number of cycles of NOP required after a ZQCL (ZQ calibration long) command is issued to DRAM. Units: Clock cycles.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_zq_short_nop</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffc00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2: not applicable. LPDDR2 and DDR3: Number of cycles of NOP required after a ZQCS (ZQ calibration short) command is issued to DRAM. Units: Clock cycles.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CHE_T_ZQ@0XF80060A4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>10200802</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ZQ parameters</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="CHE_T_ZQ_Short_Interval_Reg">Register (<A href=#mod___slcr> slcr </A>)CHE_T_ZQ_Short_Interval_Reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHE_T_ZQ_Short_Interval_Reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060A8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>t_zq_short_interval_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c845</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c845</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2: not used. LPDDR2 and DDR3: Average interval to wait between automatically issuing ZQCS (ZQ calibration short) commands to DDR3 devices. Meaningless if reg_ddrc_dis_auto_zq=1. Units: 1024 Clock cycles.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>dram_rstn_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>67</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6700000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of cycles to assert DRAM reset signal during init sequence. Units: 1024 Clock cycles. Applicable for DDR3 only.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CHE_T_ZQ_Short_Interval_Reg@0XF80060A8</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>670c845</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Misc parameters</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="deep_pwrdwn_reg">Register (<A href=#mod___slcr> slcr </A>)deep_pwrdwn_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>deep_pwrdwn_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060AC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>deeppowerdown_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2 and DDR3: not used. LPDDR2: 0: Brings Controller out of Deep Powerdown mode. 1: Puts DRAM into Deep Powerdown mode when the transaction store is empty. For performance only. Dynamic Bit Field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>deeppowerdown_to_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1fe</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1fe</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2 and DDR3: not sued. LPDDR2: Minimum deep power down time. DDR exits from deep power down mode immediately after reg_ddrc_deeppowerdown_en is deasserted. Value from the spec is 500us. Units are in 1024 clock cycles. For performance only.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>deep_pwrdwn_reg@0XF80060AC</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1fe</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Deep powerdown (LPDDR2)</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="reg_2c">Register (<A href=#mod___slcr> slcr </A>)reg_2c</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_2c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060B0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>dfi_wrlvl_max_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>fff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write leveling maximum time. Specifies the maximum number of clock cycles that the controller will wait for a response (phy_dfi_wrlvl_resp) to a write leveling enable signal (ddrc_dfi_wrlvl_en). Only applicable when connecting to PHY's operating in 'PHY WrLvl Evaluation' mode. Typical value 0xFFF Units 1024 clocks</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>dfi_rdlvl_max_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>fff000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Read leveling maximum time. Specifies the maximum number of clock cycles that the controller will wait for a response (phy_dfi_rdlvl_resp) to a read leveling enable signal (ddrc_dfi_rdlvl_en or ddrc_dfi_rdlvl_gate_en). Only applicable when connecting to PHY's operating in 'PHY RdLvl Evaluation' mode. Typical value 0xFFF Units 1024 clocks</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ddrc_reg_twrlvl_max_error</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>24:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When '1' indicates that the reg_ddrc_dfi_wrlvl_max_x1024 timer has timed out. This is a Clear-on-Write register. If write leveling timed out, an error is indicated by the DDRC and this bit gets set. The value is held until it is cleared. Clearing is done by writing a '0' to this register. Only present in designs that support DDR3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ddrc_reg_trdlvl_max_error</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:25</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2: not applicable. LPDDR2 and DDR3: When '1' indicates that the reg_ddrc_dfi_rdrlvl_max_x1024 timer has timed out. This is a Clear-on-Write register. If read leveling or gate training timed out, an error is indicated by the DDRC and this bit gets set. The value is held at that value until it is cleared. Clearing is done by writing a '0' to this register.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_wr_level_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:26</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Write leveling disabled. 1: Write leveling mode has been enabled as part of init sequence; Valid only for DDR3 DFI designs</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_rd_dqs_gate_level</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Read DQS gate leveling is disabled. 1: Read DQS Gate Leveling mode has been enabled as part of init sequence; Valid only for DDR3 DFI designs</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_rd_data_eye_train</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>28:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2: not applicable. LPDDR2 and DDR3: 0: 1: Read Data Eye training mode has been enabled as part of init sequence.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>reg_2c@0XF80060B0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1fffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1cffffff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Training control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="reg_2d">Register (<A href=#mod___slcr> slcr </A>)reg_2d</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_2d</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060B4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_skip_ocd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This register must be kept at 1'b1. 1'b0 is NOT supported. 1: Indicates the controller to skip OCD adjustment step during DDR2 initialization. OCD_Default and OCD_Exit are performed instead. 0: Not supported.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>reg_2d@0XF80060B4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>200</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Misc Debug</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="dfi_timing">Register (<A href=#mod___slcr> slcr </A>)dfi_timing</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>dfi_timing</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060B8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_t_rddata_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Time from the assertion of a READ command on the DFI interface to the assertion of the phy_dfi_rddata_en signal. DDR2 and DDR3: RL - 1 LPDDR: RL Where RL is read latency of DRAM.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_t_ctrlup_min</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7fe0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies the minimum number of clock cycles that the ddrc_dfi_ctrlupd_req signal must be asserted.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_t_ctrlup_max</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>24:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1ff8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies the maximum number of clock cycles that the ddrc_dfi_ctrlupd_req signal can assert.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>dfi_timing@0XF80060B8</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1ffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>200066</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DFI timing</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="CHE_ECC_CONTROL_REG_OFFSET">Register (<A href=#mod___slcr> slcr </A>)CHE_ECC_CONTROL_REG_OFFSET</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHE_ECC_CONTROL_REG_OFFSET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060C4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Clear_Uncorrectable_DRAM_ECC_error</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Writing 1 to this bit will clear the uncorrectable log valid bit and the uncorrectable error counters.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Clear_Correctable_DRAM_ECC_error</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Writing 1 to this bit will clear the correctable log valid bit and the correctable error counters.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CHE_ECC_CONTROL_REG_OFFSET@0XF80060C4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ECC error clear</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="CHE_CORR_ECC_LOG_REG_OFFSET">Register (<A href=#mod___slcr> slcr </A>)CHE_CORR_ECC_LOG_REG_OFFSET</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHE_CORR_ECC_LOG_REG_OFFSET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060C8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CORR_ECC_LOG_VALID</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Set to 1 when a correctable ECC error is captured. As long as this is 1 no further ECC errors will be captured. This is cleared when a 1 is written to register bit[1] of ECC CONTROL REGISTER (0x31)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ECC_CORRECTED_BIT_NUM</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fe</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Indicator of the bit number syndrome in error for single-bit errors. The field is 7-bit wide to handle 72-bits of data. This is an encoded value with ECC bits placed in between data. The encoding is given in section 5.4 Correctable bit number from the lowest error lane is reported here. There are only 13-valid bits going to an ECC lane (8-data + 5-ECC). Only 4-bits are needed to encode a max value of d'13. Bit[7] of this register is used to indicate the exact byte lane. When a error happens, if CORR_ECC_LOG_COL[0] from register 0x33 is 1'b0, then the error happened in Lane 0 or 1. If CORR_ECC_LOG_COL[0] is 1'b1, then the error happened in Lane 2 or 3. Bit[7] of this register indicates whether the error is from upper or lower byte lane. If it is 0, then it is lower byte lane and if it is 1, then it is upper byte lane. Together with CORR_ECC_LOG_COL[0] and bit[7] of this register, the exact byte lane with correctable error can be determined.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CHE_CORR_ECC_LOG_REG_OFFSET@0XF80060C8</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ECC error correction</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="CHE_UNCORR_ECC_LOG_REG_OFFSET">Register (<A href=#mod___slcr> slcr </A>)CHE_UNCORR_ECC_LOG_REG_OFFSET</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHE_UNCORR_ECC_LOG_REG_OFFSET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060DC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UNCORR_ECC_LOG_VALID</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Set to 1 when an uncorrectable ECC error is captured. As long as this is a 1, no further ECC errors will be captured. This is cleared when a 1 is written to register bit[0] of ECC CONTROL REGISTER (0x31).</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CHE_UNCORR_ECC_LOG_REG_OFFSET@0XF80060DC</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ECC unrecoverable error status</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="CHE_ECC_STATS_REG_OFFSET">Register (<A href=#mod___slcr> slcr </A>)CHE_ECC_STATS_REG_OFFSET</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHE_ECC_STATS_REG_OFFSET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060F0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>STAT_NUM_CORR_ERR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Returns the number of correctable ECC errors seen since the last read. Counter saturates at max value. This is cleared when a 1 is written to register bit[1] of ECC CONTROL REGISTER (0x58).</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>STAT_NUM_UNCORR_ERR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Returns the number of uncorrectable errors since the last read. Counter saturates at max value. This is cleared when a 1 is written to register bit[0] of ECC CONTROL REGISTER (0x58).</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CHE_ECC_STATS_REG_OFFSET@0XF80060F0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ECC error count</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ECC_scrub">Register (<A href=#mod___slcr> slcr </A>)ECC_scrub</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ECC_scrub</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060F4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_ecc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM ECC Mode. The only valid values that works for this project are 000 (No ECC) and 100 (SEC/DED over 1-beat). To run the design in ECC mode, set reg_ddrc_data_bus_width to 2'b01 (Half bus width) and reg_ddrc_ecc_mode to 100. In this mode, there will be 16-data bits + 6-bit ECC on the DRAM bus. Controller must NOT be put in full bus width mode, when ECC is turned ON. 000 : No ECC, 001: Reserved 010: Parity 011: Reserved 100: SEC/DED over 1-beat 101: SEC/DED over multiple beats 110: Device Correction 111: Reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_scrub</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Enable ECC scrubs (valid only when reg_ddrc_ecc_mode = 100). 1: Disable ECC scrubs</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ECC_scrub@0XF80060F4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>8</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ECC mode/scrub</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_rcvr_enable">Register (<A href=#mod___slcr> slcr </A>)phy_rcvr_enable</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_rcvr_enable</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006114</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dif_on</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Value to drive to IO receiver enable pins when turning it ON. When NOT in powerdown or self-refresh (when CKE=1) this value will be sent to the IOs to control receiver on/off. IOD is the size specified by the IO_DIFEN_SIZE parameter.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dif_off</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Value to drive to IO receiver enable pins when turning it OFF. When in powerdown or self-refresh (CKE=0) this value will be sent to the IOs to control receiver on/off. IOD is the size specified by the IO_DIFEN_SIZE parameter. Depending on the IO, one of these signals dif_on or dif_off can be used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_rcvr_enable@0XF8006114</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Phy receiver enable register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="PHY_Config">Register (<A href=#mod___slcr> slcr </A>)PHY_Config</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PHY_Config</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006118</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_data_slice_in_use</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Data bus width selection for Read FIFO RE generation. One bit for each data slice. 0: read data responses are ignored. 1: data slice is valid. Note: The Phy Data Slice 0 must always be enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rdlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_shift_dq</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7fc0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Determines whether early shifting is required for a particular DQ bit when reg_phy_bist_mode is 10. 0: PRBS pattern without any shift. 1: PRBS pattern shifted early by 1 bit.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_err_clr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clear the mismatch error flag from the BIST Checker. 0: No effect 1: sticky error flag is cleared</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dq_offset</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>30:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Offset value from DQS to DQ. Default value: 0x40 (for 90 degree shift). This is only used when reg_phy_use_wr_level=1. #Note 1: When a port width (W) is multiple of N instances of Ranks or Slices, each instance will get W/N bits. Instance n will get (n+1)*(W/N) -1: n (W/N) bits where n (0, 1, to N-1) is the instance number of Rank or Slice.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>PHY_Config@0XF8006118</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7fffffcf</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>40000001</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="PHY_Config">Register (<A href=#mod___slcr> slcr </A>)PHY_Config</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PHY_Config</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800611C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_data_slice_in_use</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Data bus width selection for Read FIFO RE generation. One bit for each data slice. 0: read data responses are ignored. 1: data slice is valid. Note: The Phy Data Slice 0 must always be enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rdlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_shift_dq</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7fc0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Determines whether early shifting is required for a particular DQ bit when reg_phy_bist_mode is 10. 0: PRBS pattern without any shift. 1: PRBS pattern shifted early by 1 bit.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_err_clr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clear the mismatch error flag from the BIST Checker. 0: No effect 1: sticky error flag is cleared</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dq_offset</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>30:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Offset value from DQS to DQ. Default value: 0x40 (for 90 degree shift). This is only used when reg_phy_use_wr_level=1. #Note 1: When a port width (W) is multiple of N instances of Ranks or Slices, each instance will get W/N bits. Instance n will get (n+1)*(W/N) -1: n (W/N) bits where n (0, 1, to N-1) is the instance number of Rank or Slice.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>PHY_Config@0XF800611C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7fffffcf</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>40000001</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="PHY_Config">Register (<A href=#mod___slcr> slcr </A>)PHY_Config</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PHY_Config</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006120</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_data_slice_in_use</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Data bus width selection for Read FIFO RE generation. One bit for each data slice. 0: read data responses are ignored. 1: data slice is valid. Note: The Phy Data Slice 0 must always be enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rdlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_shift_dq</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7fc0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Determines whether early shifting is required for a particular DQ bit when reg_phy_bist_mode is 10. 0: PRBS pattern without any shift. 1: PRBS pattern shifted early by 1 bit.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_err_clr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clear the mismatch error flag from the BIST Checker. 0: No effect 1: sticky error flag is cleared</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dq_offset</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>30:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Offset value from DQS to DQ. Default value: 0x40 (for 90 degree shift). This is only used when reg_phy_use_wr_level=1. #Note 1: When a port width (W) is multiple of N instances of Ranks or Slices, each instance will get W/N bits. Instance n will get (n+1)*(W/N) -1: n (W/N) bits where n (0, 1, to N-1) is the instance number of Rank or Slice.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>PHY_Config@0XF8006120</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7fffffcf</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>40000001</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="PHY_Config">Register (<A href=#mod___slcr> slcr </A>)PHY_Config</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PHY_Config</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006124</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_data_slice_in_use</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Data bus width selection for Read FIFO RE generation. One bit for each data slice. 0: read data responses are ignored. 1: data slice is valid. Note: The Phy Data Slice 0 must always be enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rdlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_shift_dq</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7fc0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Determines whether early shifting is required for a particular DQ bit when reg_phy_bist_mode is 10. 0: PRBS pattern without any shift. 1: PRBS pattern shifted early by 1 bit.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_err_clr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clear the mismatch error flag from the BIST Checker. 0: No effect 1: sticky error flag is cleared</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dq_offset</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>30:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Offset value from DQS to DQ. Default value: 0x40 (for 90 degree shift). This is only used when reg_phy_use_wr_level=1. #Note 1: When a port width (W) is multiple of N instances of Ranks or Slices, each instance will get W/N bits. Instance n will get (n+1)*(W/N) -1: n (W/N) bits where n (0, 1, to N-1) is the instance number of Rank or Slice.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>PHY_Config@0XF8006124</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7fffffcf</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>40000001</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_init_ratio">Register (<A href=#mod___slcr> slcr </A>)phy_init_ratio</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800612C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The user programmable init ratio used by Write Leveling FSM</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffc00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23c00</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The user programmable init ratio used Gate Leveling FSM</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_init_ratio@0XF800612C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>23c00</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY init ratio register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_init_ratio">Register (<A href=#mod___slcr> slcr </A>)phy_init_ratio</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006130</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The user programmable init ratio used by Write Leveling FSM</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffc00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8a</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>22800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The user programmable init ratio used Gate Leveling FSM</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_init_ratio@0XF8006130</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>22800</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY init ratio register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_init_ratio">Register (<A href=#mod___slcr> slcr </A>)phy_init_ratio</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006134</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The user programmable init ratio used by Write Leveling FSM</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffc00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8b</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>22c00</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The user programmable init ratio used Gate Leveling FSM</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_init_ratio@0XF8006134</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>22c00</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY init ratio register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_init_ratio">Register (<A href=#mod___slcr> slcr </A>)phy_init_ratio</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006138</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The user programmable init ratio used by Write Leveling FSM</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffc00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>92</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>24800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The user programmable init ratio used Gate Leveling FSM</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_init_ratio@0XF8006138</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>24800</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY init ratio register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_rd_dqs_cfg">Register (<A href=#mod___slcr> slcr </A>)phy_rd_dqs_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_rd_dqs_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006140</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>35</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>35</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for read DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the read DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line. Provide a default value of 0x40 for most applications</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Use reg_phy_rd_dqs_slave_ratio for the read DQS slave DLL 1: overwrite the delay/tap value for read DQS slave DLL with the value of the reg_phy_rd_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_rd_dqs_slave_force is 1, replace delay/tap value for read DQS slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_rd_dqs_cfg@0XF8006140</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>35</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY read DQS configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_rd_dqs_cfg">Register (<A href=#mod___slcr> slcr </A>)phy_rd_dqs_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_rd_dqs_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006144</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>35</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>35</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for read DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the read DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line. Provide a default value of 0x40 for most applications</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Use reg_phy_rd_dqs_slave_ratio for the read DQS slave DLL 1: overwrite the delay/tap value for read DQS slave DLL with the value of the reg_phy_rd_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_rd_dqs_slave_force is 1, replace delay/tap value for read DQS slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_rd_dqs_cfg@0XF8006144</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>35</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY read DQS configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_rd_dqs_cfg">Register (<A href=#mod___slcr> slcr </A>)phy_rd_dqs_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_rd_dqs_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006148</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>35</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>35</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for read DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the read DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line. Provide a default value of 0x40 for most applications</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Use reg_phy_rd_dqs_slave_ratio for the read DQS slave DLL 1: overwrite the delay/tap value for read DQS slave DLL with the value of the reg_phy_rd_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_rd_dqs_slave_force is 1, replace delay/tap value for read DQS slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_rd_dqs_cfg@0XF8006148</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>35</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY read DQS configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_rd_dqs_cfg">Register (<A href=#mod___slcr> slcr </A>)phy_rd_dqs_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_rd_dqs_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800614C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>35</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>35</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for read DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the read DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line. Provide a default value of 0x40 for most applications</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Use reg_phy_rd_dqs_slave_ratio for the read DQS slave DLL 1: overwrite the delay/tap value for read DQS slave DLL with the value of the reg_phy_rd_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_rd_dqs_slave_force is 1, replace delay/tap value for read DQS slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_rd_dqs_cfg@0XF800614C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>35</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY read DQS configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_wr_dqs_cfg">Register (<A href=#mod___slcr> slcr </A>)phy_wr_dqs_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_wr_dqs_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006154</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>77</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>77</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for write DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line. (Used to program the manual training ratio value)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Use reg_phy_wr_dqs_slave_ratio for the write DQS slave DLL 1: overwrite the delay/tap value for write DQS slave DLL with the value of the reg_phy_wr_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_wr_dqs_slave_force is 1, replace delay/tap value for write DQS slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_wr_dqs_cfg@0XF8006154</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>77</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY write DQS configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_wr_dqs_cfg">Register (<A href=#mod___slcr> slcr </A>)phy_wr_dqs_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_wr_dqs_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006158</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for write DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line. (Used to program the manual training ratio value)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Use reg_phy_wr_dqs_slave_ratio for the write DQS slave DLL 1: overwrite the delay/tap value for write DQS slave DLL with the value of the reg_phy_wr_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_wr_dqs_slave_force is 1, replace delay/tap value for write DQS slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_wr_dqs_cfg@0XF8006158</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>7c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY write DQS configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_wr_dqs_cfg">Register (<A href=#mod___slcr> slcr </A>)phy_wr_dqs_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_wr_dqs_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800615C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for write DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line. (Used to program the manual training ratio value)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Use reg_phy_wr_dqs_slave_ratio for the write DQS slave DLL 1: overwrite the delay/tap value for write DQS slave DLL with the value of the reg_phy_wr_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_wr_dqs_slave_force is 1, replace delay/tap value for write DQS slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_wr_dqs_cfg@0XF800615C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>7c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY write DQS configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_wr_dqs_cfg">Register (<A href=#mod___slcr> slcr </A>)phy_wr_dqs_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_wr_dqs_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006160</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>75</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>75</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for write DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line. (Used to program the manual training ratio value)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Use reg_phy_wr_dqs_slave_ratio for the write DQS slave DLL 1: overwrite the delay/tap value for write DQS slave DLL with the value of the reg_phy_wr_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_wr_dqs_slave_force is 1, replace delay/tap value for write DQS slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_wr_dqs_cfg@0XF8006160</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>75</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY write DQS configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_we_cfg">Register (<A href=#mod___slcr> slcr </A>)phy_we_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_we_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006168</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>e4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value to be used when reg_phy_fifo_we_in_force is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_in_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Use reg_phy_fifo_we_slave_ratio as ratio value for fifo_we_X slave DLL 1: overwrite the delay/tap value for fifo_we_X slave DLL with the value of the reg_phy_fifo_we_in_delay bus. i.e. The 'force' bit selects between specifying the delay in 'ratio' units or tap delay units</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_in_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Delay value to be used when reg_phy_fifo_we_in_force is set to 1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_we_cfg@0XF8006168</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>e4</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY FIFO write enable configuration for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_we_cfg">Register (<A href=#mod___slcr> slcr </A>)phy_we_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_we_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800616C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>df</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>df</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value to be used when reg_phy_fifo_we_in_force is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_in_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Use reg_phy_fifo_we_slave_ratio as ratio value for fifo_we_X slave DLL 1: overwrite the delay/tap value for fifo_we_X slave DLL with the value of the reg_phy_fifo_we_in_delay bus. i.e. The 'force' bit selects between specifying the delay in 'ratio' units or tap delay units</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_in_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Delay value to be used when reg_phy_fifo_we_in_force is set to 1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_we_cfg@0XF800616C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>df</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY FIFO write enable configuration for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_we_cfg">Register (<A href=#mod___slcr> slcr </A>)phy_we_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_we_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006170</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value to be used when reg_phy_fifo_we_in_force is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_in_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Use reg_phy_fifo_we_slave_ratio as ratio value for fifo_we_X slave DLL 1: overwrite the delay/tap value for fifo_we_X slave DLL with the value of the reg_phy_fifo_we_in_delay bus. i.e. The 'force' bit selects between specifying the delay in 'ratio' units or tap delay units</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_in_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Delay value to be used when reg_phy_fifo_we_in_force is set to 1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_we_cfg@0XF8006170</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>e0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY FIFO write enable configuration for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_we_cfg">Register (<A href=#mod___slcr> slcr </A>)phy_we_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_we_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006174</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>e7</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value to be used when reg_phy_fifo_we_in_force is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_in_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Use reg_phy_fifo_we_slave_ratio as ratio value for fifo_we_X slave DLL 1: overwrite the delay/tap value for fifo_we_X slave DLL with the value of the reg_phy_fifo_we_in_delay bus. i.e. The 'force' bit selects between specifying the delay in 'ratio' units or tap delay units</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_in_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Delay value to be used when reg_phy_fifo_we_in_force is set to 1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_we_cfg@0XF8006174</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>e7</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY FIFO write enable configuration for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="wr_data_slv">Register (<A href=#mod___slcr> slcr </A>)wr_data_slv</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>wr_data_slv</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800617C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>b7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>b7</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for write data slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQ muxes in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Selects reg_phy_wr_data_slave_ratio for write data slave DLL 1: overwrite the delay/tap value for write data slave DLL with the value of the reg_phy_wr_data_slave_force bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_wr_data_slave_force is 1, replace delay/tap value for write data slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>wr_data_slv@0XF800617C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>b7</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY write data slave ratio config for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="wr_data_slv">Register (<A href=#mod___slcr> slcr </A>)wr_data_slv</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>wr_data_slv</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006180</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>bc</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>bc</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for write data slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQ muxes in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Selects reg_phy_wr_data_slave_ratio for write data slave DLL 1: overwrite the delay/tap value for write data slave DLL with the value of the reg_phy_wr_data_slave_force bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_wr_data_slave_force is 1, replace delay/tap value for write data slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>wr_data_slv@0XF8006180</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>bc</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY write data slave ratio config for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="wr_data_slv">Register (<A href=#mod___slcr> slcr </A>)wr_data_slv</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>wr_data_slv</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006184</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>bc</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>bc</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for write data slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQ muxes in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Selects reg_phy_wr_data_slave_ratio for write data slave DLL 1: overwrite the delay/tap value for write data slave DLL with the value of the reg_phy_wr_data_slave_force bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_wr_data_slave_force is 1, replace delay/tap value for write data slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>wr_data_slv@0XF8006184</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>bc</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY write data slave ratio config for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="wr_data_slv">Register (<A href=#mod___slcr> slcr </A>)wr_data_slv</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>wr_data_slv</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006188</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>b5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>b5</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for write data slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQ muxes in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Selects reg_phy_wr_data_slave_ratio for write data slave DLL 1: overwrite the delay/tap value for write data slave DLL with the value of the reg_phy_wr_data_slave_force bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_wr_data_slave_force is 1, replace delay/tap value for write data slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>wr_data_slv@0XF8006188</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>b5</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY write data slave ratio config for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="reg_64">Register (<A href=#mod___slcr> slcr </A>)reg_64</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_64</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006190</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bl2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved for future Use.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_at_spd_atpg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: run scan test at slow clock speed but with high coverage 1: run scan test at full clock speed but with less coverage During normal function mode, this port must be set 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_enable</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable the internal BIST generation and checker logic when this port is set HIGH. Setting this port as 0 will stop the BIST generator/checker. In order to run BIST tests, this port must be set along with reg_phy_loopback.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_force_err</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This register bit is used to check that BIST checker is not giving false pass. When this port is set 1, data bit gets inverted before sending out to the external memory and BIST checker must return a mismatch error.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The mode bits select the pattern type generated by the BIST generator. All the patterns are transmitted continuously once enabled. 00: constant pattern (0 repeated on each DQ bit) 01: low freq pattern (00001111 repeated on each DQ bit) 10: PRBS pattern (2^7-1 PRBS pattern repeated on each DQ bit) Each DQ bit always has same data value except when early shifting in PRBS mode is requested 11: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_invert_clkout</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Inverts the polarity of DRAM clock. 0: core clock is passed on to DRAM 1: inverted core clock is passed on to DRAM. Use this when CLK can arrive at a DRAM device ahead of DQS or coincidence with DQS based on board topology. This effectively delays the CLK to the DRAM device by half -cycle, providing a CLK edge that DQS can align to during leveling.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_sel_logic</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects one of the two read leveling algorithms.'b0: Select algorithm # 1'b1: Select algorithm # 2 Please refer to Read Data Eye Training section in PHY User Guide for details about the Read Leveling algorithms</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_ctrl_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffc00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for address/command launch timing in phy_ctrl macro. This is the fraction of a clock cycle represented by the shift to be applied to the read DQS in units of 256ths. In other words, the full cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_ctrl_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Use reg_phy_ctrl_slave_ratio for address/command timing slave DLL 1: overwrite the delay/tap value for address/command timing slave DLL with the value of the reg_phy_rd_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_ctrl_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:21</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fe00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_rd_dqs_slave_force is 1, replace delay/tap value for address/command timing slave DLL with this value. This is a bit value, the remaining 2 bits are in register 0x65 bits[19:18].</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_lpddr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>29:29</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: DDR2 or DDR3. 1: LPDDR2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_cmd_latency</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>30:30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If set to 1, command comes to phy_ctrl through a flop.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>reg_64@0XF8006190</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>6ffffefe</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>40080</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Training control 2</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="reg_65">Register (<A href=#mod___slcr> slcr </A>)reg_65</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_65</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006194</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_rl_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This delay determines when to select the active rank's ratio logic delay for Write Data and Write DQS slave delay lines after PHY receives a write command at Control Interface. The programmed value must be (Write Latency - 4) with a minimum value of 1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_rl_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This delay determines when to select the active rank's ratio logic delay for Read Data and Read DQS slave delay lines after PHY receives a read command at Control Interface. The programmed value must be (Read Latency - 3) with a minimum value of 1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dll_lock_diff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3c00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3c00</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The Maximum number of delay line taps variation allowed while maintaining the master DLL lock. When the PHY is in locked state and the variation on the clock exceeds the variation indicated by the register, the lock signal is deasserted</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_use_wr_level</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write Leveling training control. 0: Use register programmed ratio values 1: Use ratio for delay line calculated by write leveling Note: This is a Synchronous dynamic signal that requires timing closure.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_use_rd_dqs_gate_level</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Read DQS Gate training control. 0: Use register programmed ratio values 1: Use ratio for delay line calculated by DQS gate leveling Note: This is a Synchronous dynamic signal that requires timing closure.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_use_rd_data_eye_level</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Read Data Eye training control. 0: Use register programmed ratio values 1: Use ratio for delay line calculated by data eye leveling Note: This is a Synchronous dynamic signal that requires timing closure</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dis_calib_rst</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the dll_calib (internally generated) signal from resetting the Read Capture FIFO pointers and portions of phy_data. Note: dll_calib is (i) generated by dfi_ctrl_upd_req or (ii) by the PHY when it detects that the clock frequency variation has exceeded the bounds set by reg_phy_dll_lock_diff or (iii) periodically throughout the leveling process. dll_calib will update the slave DL with PVT-compensated values according to master DLL outputs</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_ctrl_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg-phy_rd_dqs_slave_force is 1, replace delay/tap value for address/command timing slave DLL with this value</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>reg_65@0XF8006194</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1fc82</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Training control 3</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="page_mask">Register (<A href=#mod___slcr> slcr </A>)page_mask</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>page_mask</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006204</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_page_addr_mask</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Set this register based on the value programmed on the reg_ddrc_addrmap_* registers. Set the Column address bits to 0. Set the Page and Bank address bits to 1. This is used for calculating page_match inside the slave modules in Arbiter. The page_match is considered during the arbitration process. This mask applies to 64-bit address and not byte address. Setting this value to 0 disables transaction prioritization based on page/bank match.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>page_mask@0XF8006204</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Page mask</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="axi_priority_wr_port">Register (<A href=#mod___slcr> slcr </A>)axi_priority_wr_port</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>axi_priority_wr_port</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006208</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_pri_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Priority of this Write Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_aging_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable aging for this Write Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_urgent_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable urgent for this Write Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_page_match_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the page match feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>axi_priority_wr_port@0XF8006208</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>703ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AXI Priority control for write port 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="axi_priority_wr_port">Register (<A href=#mod___slcr> slcr </A>)axi_priority_wr_port</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>axi_priority_wr_port</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800620C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_pri_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Priority of this Write Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_aging_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable aging for this Write Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_urgent_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable urgent for this Write Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_page_match_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the page match feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>axi_priority_wr_port@0XF800620C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>703ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AXI Priority control for write port 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="axi_priority_wr_port">Register (<A href=#mod___slcr> slcr </A>)axi_priority_wr_port</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>axi_priority_wr_port</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006210</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_pri_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Priority of this Write Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_aging_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable aging for this Write Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_urgent_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable urgent for this Write Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_page_match_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the page match feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>axi_priority_wr_port@0XF8006210</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>703ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AXI Priority control for write port 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="axi_priority_wr_port">Register (<A href=#mod___slcr> slcr </A>)axi_priority_wr_port</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>axi_priority_wr_port</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006214</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_pri_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Priority of this Write Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_aging_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable aging for this Write Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_urgent_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable urgent for this Write Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_page_match_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the page match feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>axi_priority_wr_port@0XF8006214</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>703ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AXI Priority control for write port 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="axi_priority_rd_port">Register (<A href=#mod___slcr> slcr </A>)axi_priority_rd_port</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>axi_priority_rd_port</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006218</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_pri_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Priority of this Read Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_aging_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable aging for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_urgent_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable urgent for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_page_match_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the page match feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_set_hpr_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable reads to be generated as HPR for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>axi_priority_rd_port@0XF8006218</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f03ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AXI Priority control for read port 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="axi_priority_rd_port">Register (<A href=#mod___slcr> slcr </A>)axi_priority_rd_port</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>axi_priority_rd_port</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800621C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_pri_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Priority of this Read Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_aging_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable aging for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_urgent_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable urgent for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_page_match_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the page match feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_set_hpr_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable reads to be generated as HPR for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>axi_priority_rd_port@0XF800621C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f03ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AXI Priority control for read port 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="axi_priority_rd_port">Register (<A href=#mod___slcr> slcr </A>)axi_priority_rd_port</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>axi_priority_rd_port</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006220</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_pri_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Priority of this Read Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_aging_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable aging for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_urgent_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable urgent for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_page_match_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the page match feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_set_hpr_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable reads to be generated as HPR for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>axi_priority_rd_port@0XF8006220</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f03ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AXI Priority control for read port 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="axi_priority_rd_port">Register (<A href=#mod___slcr> slcr </A>)axi_priority_rd_port</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>axi_priority_rd_port</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006224</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_pri_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Priority of this Read Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_aging_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable aging for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_urgent_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable urgent for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_page_match_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the page match feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_set_hpr_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable reads to be generated as HPR for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>axi_priority_rd_port@0XF8006224</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f03ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AXI Priority control for read port 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="lpddr_ctrl0">Register (<A href=#mod___slcr> slcr </A>)lpddr_ctrl0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>lpddr_ctrl0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80062A8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_lpddr2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: DDR2 or DDR3 in use. 1: LPDDR2 in Use.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_derate_enable</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Timing parameter derating is disabled. 1: Timing parameter derating is enabled using MR4 read value. This feature should only be enabled after LPDDR2 initialization is completed</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mr4_margin</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UNUSED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>lpddr_ctrl0@0XF80062A8</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ff5</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>LPDDR2 Control 0</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="lpddr_ctrl1">Register (<A href=#mod___slcr> slcr </A>)lpddr_ctrl1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>lpddr_ctrl1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80062AC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mr4_read_interval</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Interval between two MR4 reads, USED to derate the timing parameters.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>lpddr_ctrl1@0XF80062AC</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>LPDDR2 Control 1</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="lpddr_ctrl2">Register (<A href=#mod___slcr> slcr </A>)lpddr_ctrl2</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>lpddr_ctrl2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80062B0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_min_stable_clock_x1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Time to wait after the first CKE high, tINIT2. Units: 1 clock cycle. LPDDR2 typically requires 5 x tCK delay.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_idle_after_reset_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>12</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>120</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Idle time after the reset command, tINIT4. Units: 32 clock cycles.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_mrw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Time to wait during load mode register writes. Present only in designs configured to support LPDDR2. LPDDR2 typically requires value of 5.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>lpddr_ctrl2@0XF80062B0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>5125</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>LPDDR2 Control 2</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="lpddr_ctrl3">Register (<A href=#mod___slcr> slcr </A>)lpddr_ctrl3</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>lpddr_ctrl3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80062B4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_max_auto_init_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>a6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>a6</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Maximum duration of the auto initialization, tINIT5. Units: 1024 clock cycles. LPDDR2 typically requires 10 us.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dev_zqinit_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>12</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ZQ initial calibration, tZQINIT. Units: 32 clock cycles. LPDDR2 typically requires 1 us.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>lpddr_ctrl3@0XF80062B4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>12a6</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>LPDDR2 Control 3</B> -</TD> -</TR> -</TABLE> -<P> -<H1>POLL ON DCI STATUS</H1> -<H2><a name="DDRIOB_DCI_STATUS">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DCI_STATUS</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DCI_STATUS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B74</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DONE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI done signal</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DCI_STATUS@0XF8000B74</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>tobe</B> -</TD> -</TR> -</TABLE> -<P> -<H1>UNLOCK DDR</H1> -<H2><a name="ddrc_ctrl">Register (<A href=#mod___slcr> slcr </A>)ddrc_ctrl</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ddrc_ctrl</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_soft_rstb</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Active low soft reset. Update during normal operation. 0: Resets the controller 1: Takes the controller out of reset. Dynamic Bit Field. Note: Software changes DRAM controller register values only when the controller is in the reset state, except for bit fields that can be dymanically updated.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_powerdown_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controller power down control. Update during normal operation. Enable the controller to powerdown after it becomes idle. Dynamic Bit Field. 0: disable 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_data_bus_width</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR bus width control 00: 32-bit 01: 16-bit 1x: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_burst8_refresh</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Refresh timeout. Programmed value plus one will be the number of refresh timeouts that will be allowed to accumulate before traffic is blocked and the refreshes are forced to execute. Closing pages to perform a refresh is a one-time penalty that must be paid for each group of refreshes; therefore, performing refreshes in a burst reduces the per-refresh penalty of these page closings. Higher numbers for burst_of_N_refresh slightly increases utilization; lower numbers decreases the worst-case latency associated with refreshes. 0: single refresh 1: burst-of-2 ... 7: burst-of-8 refresh</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rdwr_idle_gap</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When the preferred transaction store is empty for this many clock cycles, switch to the alternate transaction store if it is non-empty. The read transaction store (both high and low priority) is the default preferred transaction store and the write transaction store is the alternate store. When 'Prefer write over read' is set this is reversed.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_rd_bypass</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present in designs supporting read bypass. For Debug only. 0: Do not disable bypass path for high priority read page hits. 1: disable bypass path for high priority read page hits.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_act_bypass</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present in designs supporting activate bypass. For Debug only. 0: Do not disable bypass path for high priority read activates. 1: disable bypass path for high priority read activates.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_auto_refresh</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable auto-refresh. 0: do not disable auto-refresh. 1: disable auto-refresh. Dynamic Bit Field. Note: When this transitions from 0 to 1, any pending refreshes will be immediately scheduled by the controller.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ddrc_ctrl@0XF8006000</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>81</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRC Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>CHECK DDR STATUS</H1> -<H2><a name="mode_sts_reg">Register (<A href=#mod___slcr> slcr </A>)mode_sts_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>mode_sts_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006054</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ddrc_reg_operating_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Gives the status of the controller. 0: DDRC Init 1: Normal operation 2: Powerdown mode 3: Self-refresh mode 4 and above: deep power down mode (LPDDR2 only)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>mode_sts_reg@0XF8006054</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>tobe</B> -</TD> -</TR> -</TABLE> -<P> -</TABLE> -<P> -<H2><a name="ps7_mio_init_data_3_0">ps7_mio_init_data_3_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_UNLOCK"> -SLCR_UNLOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#GPIOB_CTRL"> -GPIOB_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PS IO Buffer Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_ADDR0"> -DDRIOB_ADDR0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B40</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Config for A[14:0], CKE and DRST_B</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_ADDR1"> -DDRIOB_ADDR1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B44</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Config for BA[2:0], ODT, CS_B, WE_B, RAS_B and CAS_B</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DATA0"> -DDRIOB_DATA0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B48</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Config for Data 15:0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DATA1"> -DDRIOB_DATA1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B4C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Config for Data 31:16</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DIFF0"> -DDRIOB_DIFF0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B50</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Config for DQS 1:0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DIFF1"> -DDRIOB_DIFF1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B54</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Config for DQS 3:2</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_CLOCK"> -DDRIOB_CLOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B58</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Config for Clock Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DRIVE_SLEW_ADDR"> -DDRIOB_DRIVE_SLEW_ADDR -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B5C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive and Slew controls for Address and Command pins of the DDR Interface</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DRIVE_SLEW_DATA"> -DDRIOB_DRIVE_SLEW_DATA -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive and Slew controls for DQ pins of the DDR Interface</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DRIVE_SLEW_DIFF"> -DDRIOB_DRIVE_SLEW_DIFF -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B64</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive and Slew controls for DQS pins of the DDR Interface</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DRIVE_SLEW_CLOCK"> -DDRIOB_DRIVE_SLEW_CLOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B68</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive and Slew controls for Clock pins of the DDR Interface</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DDR_CTRL"> -DDRIOB_DDR_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B6C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Buffer Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DCI_CTRL"> -DDRIOB_DCI_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB DCI Config</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DCI_CTRL"> -DDRIOB_DCI_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB DCI Config</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DCI_CTRL"> -DDRIOB_DCI_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB DCI Config</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_00"> -MIO_PIN_00 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000700</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 0 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_01"> -MIO_PIN_01 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000704</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 1 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_02"> -MIO_PIN_02 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000708</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 2 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_03"> -MIO_PIN_03 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800070C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 3 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_04"> -MIO_PIN_04 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000710</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 4 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_05"> -MIO_PIN_05 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000714</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 5 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_06"> -MIO_PIN_06 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000718</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 6 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_07"> -MIO_PIN_07 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800071C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 7 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_08"> -MIO_PIN_08 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000720</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 8 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_09"> -MIO_PIN_09 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000724</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 9 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_10"> -MIO_PIN_10 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000728</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 10 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_11"> -MIO_PIN_11 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800072C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 11 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_12"> -MIO_PIN_12 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000730</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 12 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_13"> -MIO_PIN_13 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000734</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 13 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_14"> -MIO_PIN_14 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000738</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 14 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_15"> -MIO_PIN_15 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800073C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 15 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_16"> -MIO_PIN_16 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000740</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 16 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_17"> -MIO_PIN_17 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000744</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 17 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_18"> -MIO_PIN_18 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000748</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 18 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_19"> -MIO_PIN_19 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800074C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 19 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_20"> -MIO_PIN_20 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000750</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 20 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_21"> -MIO_PIN_21 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000754</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 21 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_22"> -MIO_PIN_22 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000758</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 22 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_23"> -MIO_PIN_23 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800075C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 23 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_24"> -MIO_PIN_24 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000760</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 24 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_25"> -MIO_PIN_25 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000764</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 25 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_26"> -MIO_PIN_26 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000768</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 26 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_27"> -MIO_PIN_27 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800076C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 27 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_28"> -MIO_PIN_28 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000770</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 28 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_29"> -MIO_PIN_29 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000774</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 29 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_30"> -MIO_PIN_30 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000778</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 30 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_31"> -MIO_PIN_31 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800077C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 31 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_32"> -MIO_PIN_32 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000780</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 32 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_33"> -MIO_PIN_33 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000784</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 33 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_34"> -MIO_PIN_34 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000788</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 34 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_35"> -MIO_PIN_35 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800078C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 35 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_36"> -MIO_PIN_36 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000790</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 36 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_37"> -MIO_PIN_37 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000794</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 37 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_38"> -MIO_PIN_38 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000798</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 38 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_39"> -MIO_PIN_39 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800079C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 39 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_40"> -MIO_PIN_40 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007A0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 40 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_41"> -MIO_PIN_41 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007A4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 41 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_42"> -MIO_PIN_42 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007A8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 42 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_43"> -MIO_PIN_43 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007AC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 43 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_44"> -MIO_PIN_44 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007B0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 44 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_45"> -MIO_PIN_45 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007B4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 45 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_46"> -MIO_PIN_46 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007B8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 46 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_47"> -MIO_PIN_47 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007BC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 47 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_48"> -MIO_PIN_48 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007C0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 48 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_49"> -MIO_PIN_49 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007C4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 49 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_50"> -MIO_PIN_50 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007C8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 50 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_51"> -MIO_PIN_51 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007CC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 51 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_52"> -MIO_PIN_52 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007D0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 52 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_53"> -MIO_PIN_53 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007D4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 53 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SD0_WP_CD_SEL"> -SD0_WP_CD_SEL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000830</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SDIO 0 WP CD select</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_LOCK"> -SLCR_LOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ps7_mio_init_data_3_0">ps7_mio_init_data_3_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<H1>SLCR SETTINGS</H1> -<H2><a name="SLCR_UNLOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_UNLOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_UNLOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UNLOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write the unlock key, 0xDF0D, to enable writes to the slcr registers. All slcr registers, 0xF800_0000 to 0xF800_0B74, are writeable until locked using the SLCR_LOCK register. A read of this register returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_UNLOCK@0XF8000008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -</TABLE> -<P> -<H1>OCM REMAPPING</H1> -<H2><a name="GPIOB_CTRL">Register (<A href=#mod___slcr> slcr </A>)GPIOB_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GPIOB_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VREF_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables VREF internal generator</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VREF_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies GPIO VREF Selection 000 - VREF = Disabled 001 - VREF = 0.9V 010 - VREF = test only - 1.8V 100 - VREF = test only - 1.25V Other values reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>GPIOB_CTRL@0XF8000B00</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>71</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PS IO Buffer Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>DDRIOB SETTINGS</H1> -<H2><a name="DDRIOB_ADDR0">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_ADDR0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_ADDR0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B40</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_INP_POWER</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Input buffer control: 00: Input off (input signal to selected controller is driven Low). 01: Vref based differential receiver for SSTL, HSTL. 10: Differential input receiver. 11: LVCMOS receiver.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_UPDATE_B</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update Enable: 0: disable 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri State Termination Enable: 0: disable 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Mode Selection: 00: DCI Disabled (DDR2/3 ADDR and CLOCK) 01: DCI Drive (LPDDR2) 10: reserved 11: DCI Termination (DDR2/3 DATA and DIFF)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable NOTE: This must be 0 during DRAM init/training and can only be set to 1 after init/training completes.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Termination is used during read transactions and may be disabled (automatically by hardware) when there are no reads taking place through the DDR Interface. Disabling termination reduces power consumption. 0: termination always enabled 1: use 'dynamic_dci_ts' to disable termination when not in use NOTE: This bit must be 0 during DRAM init/training. It may be set to 1 after init/training completes.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OUTPUT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables output mode to enable output ties to 00: ibuf 01 and 10: reserved 11: obuf</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>enables pullup on output 0: no pullup 1: pullup enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_ADDR0@0XF8000B40</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Config for A[14:0], CKE and DRST_B</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_ADDR1">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_ADDR1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_ADDR1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B44</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_INP_POWER</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Input buffer control: 00: Input off (input signal to selected controller is driven Low). 01: Vref based differential receiver for SSTL, HSTL. 10: Differential input receiver. 11: LVCMOS receiver.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_UPDATE_B</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update Enable: 0: disable 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri State Termination Enable: 0: disable 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Mode Selection: 00: DCI Disabled (DDR2/3 ADDR and CLOCK) 01: DCI Drive (LPDDR2) 10: reserved 11: DCI Termination (DDR2/3 DATA and DIFF)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable NOTE: This must be 0 during DRAM init/training and can only be set to 1 after init/training completes.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Termination is used during read transactions and may be disabled (automatically by hardware) when there are no reads taking place through the DDR Interface. Disabling termination reduces power consumption. 0: termination always enabled 1: use 'dynamic_dci_ts' to disable termination when not in use NOTE: This bit must be 0 during DRAM init/training. It may be set to 1 after init/training completes.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OUTPUT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables output mode to enable output ties to 00: ibuf 01 and 10: reserved 11: obuf</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>enables pullup on output 0: no pullup 1: pullup enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_ADDR1@0XF8000B44</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Config for BA[2:0], ODT, CS_B, WE_B, RAS_B and CAS_B</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DATA0">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DATA0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DATA0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B48</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_INP_POWER</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Input buffer control: 00: Input off (input signal to selected controller is driven Low). 01: Vref based differential receiver for SSTL, HSTL. 10: Differential input receiver. 11: LVCMOS receiver.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_UPDATE_B</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update Enable: 0: disable 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri State Termination Enable: 0: disable 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Mode Selection: 00: DCI Disabled (DDR2/3 ADDR and CLOCK) 01: DCI Drive (LPDDR2) 10: reserved 11: DCI Termination (DDR2/3 DATA and DIFF)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable NOTE: This must be 0 during DRAM init/training and can only be set to 1 after init/training completes.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Termination is used during read transactions and may be disabled (automatically by hardware) when there are no reads taking place through the DDR Interface. Disabling termination reduces power consumption. 0: termination always enabled 1: use 'dynamic_dci_ts' to disable termination when not in use NOTE: This bit must be 0 during DRAM init/training. It may be set to 1 after init/training completes.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OUTPUT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables output mode to enable output ties to 00: ibuf 01 and 10: reserved 11: obuf</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>enables pullup on output 0: no pullup 1: pullup enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DATA0@0XF8000B48</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>672</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Config for Data 15:0</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DATA1">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DATA1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DATA1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B4C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_INP_POWER</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Input buffer control: 00: Input off (input signal to selected controller is driven Low). 01: Vref based differential receiver for SSTL, HSTL. 10: Differential input receiver. 11: LVCMOS receiver.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_UPDATE_B</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update Enable: 0: disable 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri State Termination Enable: 0: disable 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Mode Selection: 00: DCI Disabled (DDR2/3 ADDR and CLOCK) 01: DCI Drive (LPDDR2) 10: reserved 11: DCI Termination (DDR2/3 DATA and DIFF)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable NOTE: This must be 0 during DRAM init/training and can only be set to 1 after init/training completes.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Termination is used during read transactions and may be disabled (automatically by hardware) when there are no reads taking place through the DDR Interface. Disabling termination reduces power consumption. 0: termination always enabled 1: use 'dynamic_dci_ts' to disable termination when not in use NOTE: This bit must be 0 during DRAM init/training. It may be set to 1 after init/training completes.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OUTPUT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables output mode to enable output ties to 00: ibuf 01 and 10: reserved 11: obuf</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>enables pullup on output 0: no pullup 1: pullup enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DATA1@0XF8000B4C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>672</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Config for Data 31:16</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DIFF0">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DIFF0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DIFF0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B50</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_INP_POWER</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Input buffer control: 00: Input off (input signal to selected controller is driven Low). 01: Vref based differential receiver for SSTL, HSTL. 10: Differential input receiver. 11: LVCMOS receiver.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_UPDATE_B</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update Enable: 0: disable 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri State Termination Enable: 0: disable 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Mode Selection: 00: DCI Disabled (DDR2/3 ADDR and CLOCK) 01: DCI Drive (LPDDR2) 10: reserved 11: DCI Termination (DDR2/3 DATA and DIFF)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable NOTE: This must be 0 during DRAM init/training and can only be set to 1 after init/training completes.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Termination is used during read transactions and may be disabled (automatically by hardware) when there are no reads taking place through the DDR Interface. Disabling termination reduces power consumption. 0: termination always enabled 1: use 'dynamic_dci_ts' to disable termination when not in use NOTE: This bit must be 0 during DRAM init/training. It may be set to 1 after init/training completes.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OUTPUT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables output mode to enable output ties to 00: ibuf 01 and 10: reserved 11: obuf</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>enables pullup on output 0: no pullup 1: pullup enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DIFF0@0XF8000B50</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>674</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Config for DQS 1:0</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DIFF1">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DIFF1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DIFF1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B54</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_INP_POWER</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Input buffer control: 00: Input off (input signal to selected controller is driven Low). 01: Vref based differential receiver for SSTL, HSTL. 10: Differential input receiver. 11: LVCMOS receiver.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_UPDATE_B</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update Enable: 0: disable 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri State Termination Enable: 0: disable 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Mode Selection: 00: DCI Disabled (DDR2/3 ADDR and CLOCK) 01: DCI Drive (LPDDR2) 10: reserved 11: DCI Termination (DDR2/3 DATA and DIFF)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable NOTE: This must be 0 during DRAM init/training and can only be set to 1 after init/training completes.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Termination is used during read transactions and may be disabled (automatically by hardware) when there are no reads taking place through the DDR Interface. Disabling termination reduces power consumption. 0: termination always enabled 1: use 'dynamic_dci_ts' to disable termination when not in use NOTE: This bit must be 0 during DRAM init/training. It may be set to 1 after init/training completes.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OUTPUT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables output mode to enable output ties to 00: ibuf 01 and 10: reserved 11: obuf</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>enables pullup on output 0: no pullup 1: pullup enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DIFF1@0XF8000B54</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>674</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Config for DQS 3:2</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_CLOCK">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_CLOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_CLOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B58</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_INP_POWER</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Input buffer control: 00: Input off (input signal to selected controller is driven Low). 01: Vref based differential receiver for SSTL, HSTL. 10: Differential input receiver. 11: LVCMOS receiver.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_UPDATE_B</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update Enable: 0: disable 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri State Termination Enable: 0: disable 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Mode Selection: 00: DCI Disabled (DDR2/3 ADDR and CLOCK) 01: DCI Drive (LPDDR2) 10: reserved 11: DCI Termination (DDR2/3 DATA and DIFF)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable NOTE: This must be 0 during DRAM init/training and can only be set to 1 after init/training completes.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Termination is used during read transactions and may be disabled (automatically by hardware) when there are no reads taking place through the DDR Interface. Disabling termination reduces power consumption. 0: termination always enabled 1: use 'dynamic_dci_ts' to disable termination when not in use NOTE: This bit must be 0 during DRAM init/training. It may be set to 1 after init/training completes.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OUTPUT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables output mode to enable output ties to 00: ibuf 01 and 10: reserved 11: obuf</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>enables pullup on output 0: no pullup 1: pullup enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_CLOCK@0XF8000B58</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Config for Clock Output</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DRIVE_SLEW_ADDR">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DRIVE_SLEW_ADDR</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DRIVE_SLEW_ADDR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B5C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_DRIVE_P</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_DRIVE_N</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_SLEW_P</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_SLEW_N</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>180000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_GTL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_RTERM</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f8000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DRIVE_SLEW_ADDR@0XF8000B5C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>18c61c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Drive and Slew controls for Address and Command pins of the DDR Interface</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DRIVE_SLEW_DATA">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DRIVE_SLEW_DATA</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DRIVE_SLEW_DATA</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_DRIVE_P</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_DRIVE_N</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_SLEW_P</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_SLEW_N</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_GTL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_RTERM</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f8000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DRIVE_SLEW_DATA@0XF8000B60</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>f9861c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Drive and Slew controls for DQ pins of the DDR Interface</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DRIVE_SLEW_DIFF">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DRIVE_SLEW_DIFF</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DRIVE_SLEW_DIFF</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B64</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_DRIVE_P</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_DRIVE_N</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_SLEW_P</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_SLEW_N</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_GTL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_RTERM</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f8000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DRIVE_SLEW_DIFF@0XF8000B64</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>f9861c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Drive and Slew controls for DQS pins of the DDR Interface</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DRIVE_SLEW_CLOCK">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DRIVE_SLEW_CLOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DRIVE_SLEW_CLOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B68</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_DRIVE_P</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_DRIVE_N</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_SLEW_P</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_SLEW_N</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_GTL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_RTERM</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f8000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DRIVE_SLEW_CLOCK@0XF8000B68</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>f9861c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Drive and Slew controls for Clock pins of the DDR Interface</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DDR_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DDR_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DDR_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B6C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VREF_INT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables VREF internal generator</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VREF_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1e</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies DDR IOB Vref generator output: 0001: VREF = 0.6V for LPDDR2 with 1.2V IO 0100: VREF = 0.75V for DDR3 with 1.5V IO 1000: VREF = 0.90V for DDR2 with 1.8V IO</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VREF_EXT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables External VREF input x0: Disable External VREF for lower 16 bits x1: Enable External VREF for lower 16 bits 0x: Disable External VREF for upper 16 bits 1x: Enable External VREF for upper 16 bits</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_VREF_PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>180</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>REFIO_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables VRP,VRN 0: VRP/VRN not used 1: VRP/VRN used as refio</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_REFIO_TEST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_REFIO_PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_DRST_B_PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_CKE_PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DDR_CTRL@0XF8000B6C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>260</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Buffer Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>ASSERT RESET</H1> -<H2><a name="DDRIOB_DCI_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DCI_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DCI_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>At least toggle once to initialize flops in DCI system</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DCI_CTRL@0XF8000B70</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB DCI Config</B> -</TD> -</TR> -</TABLE> -<P> -<H1>DEASSERT RESET</H1> -<H2><a name="DDRIOB_DCI_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DCI_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DCI_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>At least toggle once to initialize flops in DCI system</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_VRN_OUT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DCI_CTRL@0XF8000B70</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>21</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB DCI Config</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DCI_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DCI_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DCI_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>At least toggle once to initialize flops in DCI system</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI System Enable. Set to 1 if any IOs in DDR IO Bank use DCI Termination. DDR2, DDR3 and LPDDR2 (Silicon Revision 2.0+) configurations require this bit set to 1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_VRP_TRI</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_VRN_TRI</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_VRP_OUT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_VRN_OUT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>NREF_OPT1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Calibration. Use the values in the Calibration Table.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>NREF_OPT2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>700</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Calibration. Use the values in the Calibration Table.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>NREF_OPT4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Calibration. Use the values in the Calibration Table.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PREF_OPT1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Calibration. Use the values in the Calibration Table.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PREF_OPT2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Calibration. Use the values in the Calibration Table.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UPDATE_CONTROL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update Mode. Use the values in the Calibration Table.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_INIT_COMPLETE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:21</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_TST_CLK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>22:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_TST_HLN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:23</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_TST_HLP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>24:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_TST_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:25</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_INT_DCI_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:26</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DCI_CTRL@0XF8000B70</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7feffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>823</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB DCI Config</B> -</TD> -</TR> -</TABLE> -<P> -<H1>MIO PROGRAMMING</H1> -<H2><a name="MIO_PIN_00">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_00</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_00</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000700</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high. 0: disable 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 1 chip select, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Chip Select 0, Output 10: NAND Flash Chip Select, Output 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 0 (bank 0), Input/Output others: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Select IO Buffer Edge Rate, applicable when IO_Type is LVCMOS18, LVCMOS25 or LVCMOS33. 0: Slow CMOS edge 1: Fast CMOS edge</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Select the IO Buffer Type. 000: Reserved 001: LVCMOS18 010: LVCMOS25 011, 101, 110, 111: LVCMOS33 100: HSTL</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables Pullup on IO Buffer pin 0: disable 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable HSTL Input Buffer to save power when it is an output-only (IO_Type must be HSTL). 0: enable 1: disable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_00@0XF8000700</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1600</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 0 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_01">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_01</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_01</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000704</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 0 Chip Select, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM Address Bit 25, Output 10: SRAM/NOR Chip Select 1, Output 11: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 1 (bank 0), Input/Output others: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_01@0XF8000704</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>702</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 1 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_02">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_02</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_02</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000708</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 0 IO Bit 0, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 8, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: NAND Flash ALEn, Output 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 2 (bank 0), Input/Output others: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_02@0XF8000708</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>702</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 2 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_03">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_03</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_03</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800070C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 0 IO Bit 1, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 9, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Data bit 0, Input/Output 10: NAND WE_B, Output 11: SDIO 1 Card Power, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 3 (bank 0), Input/Output others: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_03@0XF800070C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>702</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 3 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_04">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_04</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_04</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000710</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 0 IO Bit 2, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 10, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Data Bit 1, Input/Output 10: NAND Flash IO Bit 2, Input/Output 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 4 (bank 0), Input/Output others: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_04@0XF8000710</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>702</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 4 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_05">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_05</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_05</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000714</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 0 IO Bit 3, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 11, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Data Bit 2, Input/Output 10: NAND Flash IO Bit 0, Input/Output 11: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 5 (bank 0), Input/Output others: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_05@0XF8000714</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>702</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 5 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_06">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_06</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_06</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000718</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 0 Clock, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 12, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Data Bit 3, Input/Output 10: NAND Flash IO Bit 1, Input/Output 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 6 (bank 0), Input/Output others: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_06@0XF8000718</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>702</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 6 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_07">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_07</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_07</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800071C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 13, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR OE_B, Output 10: NAND Flash CLE_B, Output 11: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 7 (bank 0), Output-only others: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_07@0XF800071C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 7 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_08">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_08</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_08</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000720</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI Feedback Clock, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 14, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: NAND Flash RD_B, Output 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 8 (bank 0), Output-only 001: CAN 1 Tx, Output 010: SRAM/NOR BLS_B, Output 011 to 110: reserved 111: UART 1 TxD, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_08@0XF8000720</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>702</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 8 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_09">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_09</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_09</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000724</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 1 Flash Memory Clock, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 15, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Data Bit 6, Input/Output 10: NAND Flash IO Bit 4, Input/Output 11: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 9 (bank 0), Input/Output 001: CAN 1 Rx, Input 010 to 110: reserved 111: UART 1 RxD, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_09@0XF8000724</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1600</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 9 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_10">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_10</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_10</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000728</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 1 IO Bit 0, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 2, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Data Bit 7, Input/Output 10: NAND Flash IO Bit 5, Input/Output 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 10 (bank 0), Input/Output 001: CAN 0 Rx, Input 010: I2C 0 Serial Clock, Input/Ouput 011: PJTAG TDI, Input 100: SDIO 1 IO Bit 0, Input/Output 101: SPI 1 MOSI, Input/Output 110: reserved 111: UART 0 RxD, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_10@0XF8000728</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1640</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 10 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_11">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_11</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_11</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800072C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 1 IO Bit 1, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 3, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Data Bit 4, Input/Output 10: NAND Flash IO Bit 6, Input/Output 11: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 11 (bank 0), Input/Output 001: CAN 0 Tx, Output 010: I2C 0 Serial Data, Input/Output 011: PJTAG TDO, Output 100: SDIO 1 Command, Input/Output 101: SPI 1 MISO, Input/Output 110: reserved 111: UART 0 TxD, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_11@0XF800072C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1640</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 11 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_12">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_12</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_12</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000730</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 1 IO Bit 2, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Clock, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Wait, Input 10: NAND Flash IO Bit 7, Input/Output 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 12 (bank 0), Input/Output 001: CAN 1 Tx, Output 010: I2C 1 Serial Clock, Input/Output 011: PJTAG TCK, Input 100: SDIO 1 Clock, Input/Output 101: SPI 1 Serial Clock, Input/Output 110: reserved 111: UART 1 TxD, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_12@0XF8000730</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1640</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 12 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_13">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_13</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_13</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000734</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 1 IO Bit 3, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Control Signal, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Data Bit 5, Input/Output 10: NAND Flash IO Bit 3, Input/Output 11: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 13 (bank 0), Input/Output 001: CAN 1 Rx, Input 010: I2C 1 Serial Data, Input/Output 011: PJTAG TMS, Input 100: SDIO 1 IO Bit 1, Input/Output 101: SPI 1 Slave Select 0, Input/Output 110: reserved 111: UART 1 RxD, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_13@0XF8000734</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1640</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 13 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_14">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_14</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_14</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000738</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 0, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: NAND Flash Busy, Input 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 14 (bank 0), Input/Output 001: CAN 0 Rx, Input 010: I2C 0 Serial Clock, Input/Ouput 011: SWDT Clock, Input 100: SDIO 1 IO Bit 2, Input/Output 101: SPI 1 slave select 1, Output 110: reserved 111: UART 0 RxD, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_14@0XF8000738</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1600</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 14 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_15">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_15</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_15</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800073C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 1, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 0, Output 10: reserved 11: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 15 (bank 0), Input/Output 001: CAN 0 Tx, Output 010: I2C 0 Serial Data, Input/Output 011: SWDT Reset, Output 100: SDIO 1 IO Bit 3, Input/Output 101: SPI 1 Slave Select 2, Output 110: reserved 111: UART 0 TxD, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_15@0XF800073C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1600</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 15 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_16">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_16</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_16</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000740</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII Tx Clock, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 4, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 1, Output 10: NAND Flash IO Bit 8, Input/Output 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 16 (bank 0), Input/Output 001: CAN 1 Tx, Output 010: I2C 1 Serial Clock, Input/Output 011: reserved 100: SDIO 0 Clock, Input/Output 101: SPI 0 Serial Clock, Input/Output 110: TTC 1 Wave, Output 111: UART 1 TxD, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_16@0XF8000740</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2902</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 16 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_17">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_17</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_17</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000744</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII TxD Bit 0, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 5, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 2, Output 10: NAND Flash IO Bit 9, Input/Output 11: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 17 (bank 0), Input/Output 001: CAN 1 Rx, Input 010: I2C 1 Serial Data, Input/Output 011: reserved 100: SDIO 0 Command, Input/Output 101: SPI 0 MISO, Input/Output 110 TTC 1 Clock, Input 111: UART 1 RxD, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_17@0XF8000744</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2902</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 17 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_18">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_18</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_18</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000748</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII TxD Bit 1, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 6, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 3, Output 10: NAND Flash IO Bit 10, Input/Output 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 18 (bank 0), Input/Output 001: CAN 0 Rx, Input 010: I2C 0 Serial Clock, Input/Ouput 011: reserved 100: SDIO 0 IO Bit 0, Input/Output 101: SPI 0 Slave Select 0, Input/Output 110: TTC 0 Wave, Output 111: UART 0 RxD, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_18@0XF8000748</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2902</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 18 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_19">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_19</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_19</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800074C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII TxD Bit 2, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 7, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 4, Output 10: NAND Flash IO Bit 11, Input/Output 111: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 19 (bank 0), Input/Output 001: CAN 0 Tx, Output 010: I2C 0 Serial Data, Input/Output 011: reserved 100: SDIO 0 IO Bit 1, Input/Output 101: SPI 0 Slave Select 1, Output 110: TTC 0 Clock, Input 111: UART 0 TxD, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_19@0XF800074C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2902</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 19 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_20">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_20</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_20</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000750</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII TxD Bit 3, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 5, Output 10: NAND Flash IO Bit 12, Input/Output 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 20 (bank 0), Input/Output 001: CAN 1 Tx, Output 010: I2C 1 Serial Clock, Input/Output 011: reserved 100: SDIO 0 IO Bit 2, Input/Output 101: SPI 0 Slave Select 2, Output 110: reserved 111: UART 1 TxD, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_20@0XF8000750</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2902</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 20 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_21">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_21</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_21</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000754</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII Tx Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 6, Output 10: NAND Flash IO Bit 13, Input/Output 11: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 21 (bank 0), Input/Output 001: CAN 1 Rx, Input 010: I2C 1 Serial Data, Input/Output 011: reserved 100: SDIO 0 IO Bit 3, Input/Output 101: SPI 0 MOSI, Input/Output 110: reserved 111: UART 1 RxD, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_21@0XF8000754</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2902</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 21 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_22">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_22</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_22</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000758</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII Rx Clock, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 2, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 7, Output 10: NAND Flash IO Bit 14, Input/Output 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 22 (bank 0), Input/Output 001: CAN 0 Rx, Input 010: I2C 0 Serial Clock, Input/Ouput 011: PJTAG TDI, Input 100: SDIO 1 IO Bit 0, Input/Output 101: SPI 1 MOSI, Input/Output 110: reserved 111: UART 0 RxD, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_22@0XF8000758</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>903</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 22 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_23">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_23</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_23</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800075C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII RxD 0, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 3, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 8, Output 10: NAND Flash IO Bit 15, Input/Output 11: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 23 (bank 0), Input/Output 001: CAN 0 Tx, Output 010: I2C 0 Serial Data, Input/Output 011: PJTAG TDO, Output 100: SDIO 1 Command, Input/Output 101: SPI 1 MISO, Input/Output 110: reserved 111: UART 0 TxD, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_23@0XF800075C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>903</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 23 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_24">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_24</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_24</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000760</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII RxD Bit 1, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Clock output, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 9, Output 10: reserved 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 24 (bank 0), Input/Output 001: CAN 1 Tx, Output 010: I2C 1 Serial Clock, Input/Output 011: PJTAG TCK, Input 100: SDIO 1 Clock, Input/Output 101: SPI 1 Serial Clock, Input/Output 110: reserved 111: UART 1 TxD, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_24@0XF8000760</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>903</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 24 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_25">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_25</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_25</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000764</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII RxD Bit2, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Control Signal, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 10, Output 10: reserved 11: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 25 (bank 0), Input/Output 001: CAN 1 Rx, Input 010: I2C 1 Serial Data, Input/Output 011: PJTAG TMS, Input 100: SDIO 1 IO Bit 1, Input/Output 101: SPI 1 Slave Select 0, Input/Output 110: reserved 111: UART 1 RxD, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_25@0XF8000764</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>903</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 25 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_26">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_26</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_26</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000768</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII RxD Bit 3, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 0, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 11, Output 10: reserved 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 26 (bank 0), Input/Output 001: CAN 0 Rx, Input 010: I2C 0 Serial Clock, Input/Ouput 011: SWDT Clock, Input 100: SDIO 1 IO Bit 2, Input/Output 101: SPI 1 Slave Select 1, Output 110: reserved 111: UART 0 RxD, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_26@0XF8000768</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>903</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 26 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_27">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_27</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_27</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800076C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII Rx Control, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 1, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 12, Output 10: reserved 11: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 27 (bank 0), Input/Output 001: CAN 0 Tx, Output 010: I2C 0 Serial Data, Input/Output 011: SWDT Reset, Output 100: SDIO 1 IO Bit 3, Input/Output 101: SPI 1 Slave Select 2, Output 110: reserved 111: UART 0 TxD, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_27@0XF800076C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>903</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 27 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_28">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_28</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_28</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000770</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII Tx Clock, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Data Bit 4, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 13, Output 10: reserved 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 28 (bank 0), Input/Output 001: CAN 1 Tx, Output 010: I2C 1 Serial Clock, Input/Output 011: reserved 100: SDIO 0 Clock, Input/Output 101: SPI 0 Serial Clock, Input/Output 110: TTC 1 Wave, Output 111: UART 1 TxD, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_28@0XF8000770</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 28 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_29">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_29</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_29</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000774</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII TxD Bit 0, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Direction, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 14, Output 10: reserved 11: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 29 (bank 0), Input/Output 001: CAN 1 Rx, Input 010: I2C 1 Serial Data, Input/Output 011: reserved 100: SDIO 0 Command, Input/Output 101: SPI 0 MISO, Input/Output 110: TTC 1 Clock, Input 111: UART 1 RxD, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_29@0XF8000774</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>305</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 29 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_30">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_30</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_30</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000778</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII TxD Bit 1, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Stop, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 15, Output 10: reserved 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 30 (bank 0), Input/Output 001: CAN 0 Rx, Input 010: I2C 0 Serial Clock, Input/Ouput 011: reserved 100: SDIO 0 IO Bit 0, Input/Output 101: SPI 0 Slave Select 0, Input/Output 110: TTC 0 Wave, Output 111: UART 0 RxD, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_30@0XF8000778</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 30 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_31">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_31</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_31</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800077C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII TxD Bit 2, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Next, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 16, Output 10: reserved 11: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 31 (bank 0), Input/Output 001: CAN 0 Tx, Output 010: I2C 0 Serial Data, Input/Output 011: reserved 100: SDIO 0 IO Bit 1, Input/Output 101: SPI 0 Slave Select 1, Output 110: TTC 0 Clock, Input 111: UART 0 TxD, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_31@0XF800077C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>305</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 31 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_32">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_32</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000780</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII TxD Bit 3, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Data Bit 0, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 17, Output 10: reserved 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 32 (bank 1), Input/Output 001: CAN 1 Tx, Output 010: I2C 1 Serial Clock, Input/Output 011: reserved 100: SDIO 0 IO Bit 2, Input/Output 101: SPI 0 Slave Select 2, Output 110: reserved 111: UART 1 TxD, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_32@0XF8000780</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 32 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_33">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_33</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_33</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000784</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII Tx Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Data Bit 1, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 18, Output 10: reserved 11: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 33 (Bank 1), Input/Output 001: CAN 1 Rx, Input 010: I2C 1 Serial Data, Input/Output 011: reserved 100: SDIO 0 IO Bit 3, Input/Output 101: SPI 0 MOSI, Input/Output 110: reserved 111: UART 1 RxD, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_33@0XF8000784</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 33 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_34">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_34</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_34</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000788</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII Rx Clock, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Data Bit 2, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 19, Output 10: reserved 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 34 (bank 1), Input/Output 001: CAN 0 Rx, Input 010: I2C 0 Serial Clock, Input/Ouput 011: PJTAG TDI, Input 100: SDIO 1 IO Bit 0, Input/Output 110: reserved 111: UART 0 RxD, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_34@0XF8000788</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 34 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_35">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_35</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_35</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800078C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII RxD data Bit 0, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Data Bit 3, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 20, Output 10: reserved 11: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 35 (bank 1), Input/Output 001: CAN 0 Tx, Output 010: I2C 0 Serial Data, Input/Output 011: PJTAG TDO, Output 100: SDIO 1 Command, Input/Output 101: SPI 1 MISO, Input/Output 110: reserved 111: UART 0 TxD, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_35@0XF800078C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 35 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_36">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_36</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_36</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000790</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII Data Bit 1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Clock, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 21, Output 10: reserved 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 36 (bank 1), Input/Output 001: CAN 1 Tx, Output 010: I2C 1 Serial Clock, Input/Output 011: PJTAG TCK, Input 100: SDIO 1 Clock, Input/Output 101: SPI 1 Clock, Input/Output 110: reserved 111: UART 1 TxD, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_36@0XF8000790</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>305</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 36 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_37">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_37</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_37</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000794</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII RxD Data Bit 2, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Data Bit 5, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 22, Output 10: reserved 11: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 37 (bank 1), Input/Output 001: CAN 1 Rx, Input 010: I2C 1 Serial Data, Input/Output 011: PJTAG TMS, Input 100: SDIO 1 IO Bit 1, Input/Output 101: SPI 1 Slave Select 0, Input/Output 110: reserved 111: UART 1 RxD, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_37@0XF8000794</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 37 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_38">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_38</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_38</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000798</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII RxD Data Bit 3, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Data Bit 6, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 23, Output 10: reserved 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 38 (bank 1), Input/Output 001: CAN 0 Rx, Input 010: I2C 0 Serial Clock, Input/Ouput 011: SWDT Clock, Input 100: SDIO 1 IO Bit 2, Input/Output 101: SPI 1 Slave Select 1, Output 110: reserved 111: UART 0 RxD, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_38@0XF8000798</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 38 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_39">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_39</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_39</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800079C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII Rx Control, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Data Bit 7, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 24, Output 10: reserved 11: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 39 (bank 1), Input/Output 001: CAN 0 Tx, Output 010: I2C 0 Serial Data, Input/Output 011: SWDT Reset, Output 100: SDIO 1 IO Bit 3, Input/Output 101: SPI 1 Slave Select 2, Output 110: reserved 111: UART 0 TxD, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_39@0XF800079C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 39 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_40">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_40</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_40</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007A0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Data Bit 4, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 40 (bank 1), Input/Output 001: CAN 1 Tx, Output 010: I2C 1 Serial Clock, Input/Output 011: reserved 100: SDIO 0 Clock, Input/Output 101: SPI 0 Serial Clock, Input/Output 110: TTC 1 Wave, Output 111: UART 1 TxD, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_40@0XF80007A0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>380</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 40 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_41">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_41</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_41</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007A4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Direction, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 41 (bank 1), Input/Output 001: CAN 1 Rx, Input 010: I2C 1 Serial Data, Input/Output 011: reserved 100: SDIO 0 Command, Input/Output 101: SPI 0 MISO, Input/Output 110: TTC 1 Clock, Input 111: UART 1 RxD, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_41@0XF80007A4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>380</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 41 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_42">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_42</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_42</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007A8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Stop, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 42 (bank 1), Input/Output 001: CAN 0 Rx, Input 010: I2C 0 Serial Clock, Input/Ouput 011: reserved 100: SDIO 0 IO Bit 0, Input/Output 101: SPI 0 Slave Select 0, Input/Output 110: TTC 0 Wave, Output 111: UART 0 RxD, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_42@0XF80007A8</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>380</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 42 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_43">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_43</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_43</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007AC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Next, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 43 (bank 1), Input/Output 001: CAN 0 Tx, Output 010: I2C 0 Serial Data, Input/Output 011: reserved 100: SDIO 0 IO Bit 1, Input/Output 101: SPI 0 Slave Select 1, Output 110: TTC 0 Clock, Input 111: UART 0 TxD, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_43@0XF80007AC</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>380</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 43 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_44">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_44</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_44</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007B0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Data Bit 0, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 44 (bank 1), Input/Output 001: CAN 1 Tx, Output 010: I2C 1 Serial Clock, Input/Output 011: reserved 100: SDIO 0 IO Bit 2, Input/Output 101: SPI 0 Slave Select 2, Output 110: reserved 111: UART 1 TxD, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_44@0XF80007B0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>380</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 44 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_45">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_45</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_45</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007B4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Data Bit 1, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 45 (bank 1), Input/Output 001: CAN 1 Rx, Input 010: I2C 1 Serial Data, Input/Output 011: reserved 100: SDIO 0 IO Bit 3, Input/Output 101: SPI 0 MOSI, Input/Output 110: reserved 111: UART 1 RxD, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_45@0XF80007B4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>380</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 45 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_46">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_46</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_46</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007B8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Data Bit 2, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 46 (bank 1), Input/Output 001: CAN 0 Rx, Input 010: I2C 0 Serial Clock, Input/Ouput 011: PJTAG TDI, Input 100: SDIO 1 IO Bit 0, Input/Output 101: SPI 1 MOSI, Input/Output 110: reserved 111: UART 0 RxD, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_46@0XF80007B8</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1200</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 46 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_47">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_47</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_47</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007BC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_47@0XF80007BC</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f01</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>201</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 47 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_48">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_48</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_48</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007C0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Clock, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 48 (bank 1), Input/Output 001: CAN 1 Tx, Output 010: I2C 1 Serial Clock, Input/Output 011: PJTAG TCK, Input 100: SDIO 1 Clock, Input/Output 101: SPI 1 Serial Clock, Input/Output 110: reserved 111: UART 1 TxD, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_48@0XF80007C0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2e0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 48 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_49">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_49</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_49</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007C4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Data Bit 5, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 49 (bank 1), Input/Output 001: CAN 1 Rx, Input 010: I2C 1 Serial Data, Input/Output 011: PJTAG TMS, Input 100: SDIO 1 IO Bit 1, Input/Output 101: SPI 1 Select 0, Input/Output 110: reserved 111: UART 1 RxD, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_49@0XF80007C4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2e1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 49 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_50">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_50</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_50</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007C8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Data Bit 6, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 50 (bank 1), Input/Output 001: CAN 0 Rx, Input 010: I2C 0 Serial Clock, Input/Ouput 011: SWDT Clock, Input 100: SDIO 1 IO Bit 2, Input/Output 101: SPI 1 Slave Select 1, Output 110: reserved 111: UART 0 RxD, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_50@0XF80007C8</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 50 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_51">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_51</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_51</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007CC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Data Bit 7, Input/Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 51 (bank 1), Input/Output 001: CAN 0 Tx, Output 010: I2C 0 Serial Data, Input/Output 011: SWDT Reset, Output 100: SDIO 1 IO Bit 3, Input/Output 101: SPI 1 Slave Select 2, Output 110: reserved 111: UART 0 TxD, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_51@0XF80007CC</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 51 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_52">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_52</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_52</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007D0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 0 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 52 (bank 1), Input/Output 001: CAN 1 Tx, Output 010: I2C 1 Serial Clock, Input/Output 011: SWDT Clock, Input 100: MDIO 0 Clock, Output 101: MDIO 1 Clock, Output 110: reserved 111: UART 1 TxD, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_52@0XF80007D0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 52 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_53">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_53</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_53</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007D4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 1 Power Control, Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 53 (bank 1), Input/Output 001: CAN 1 Rx, Input 010: I2C 1 Serial Data, Input/Output 011: SWDT Reset, Output 100: MDIO 0 Data, Input/Output 101: MDIO 1 Data, Input/Output 110: reserved 111: UART 1 RxD, Input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULLUP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_53@0XF80007D4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 53 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="SD0_WP_CD_SEL">Register (<A href=#mod___slcr> slcr </A>)SD0_WP_CD_SEL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SD0_WP_CD_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000830</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SDIO0_WP_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>37</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>37</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SDIO 0 WP Select. Values 53:0 select MIO input (any pin except 7 and 8) Values 63:54 select EMIO input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SDIO0_CD_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2f0000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SDIO 0 CD Select. Values 53:0 select MIO input (any pin except bits 7 and 8) Values 63:54 select EMIO input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SD0_WP_CD_SEL@0XF8000830</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f003f</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2f0037</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SDIO 0 WP CD select</B> -</TD> -</TR> -</TABLE> -<P> -<H1>LOCK IT BACK</H1> -<H2><a name="SLCR_LOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_LOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_LOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write the lock key, 0x767B, to write protect the slcr registers: all slcr registers, 0xF800_0000 to 0xF800_0B74, are write protected until the unlock key is written to the SLCR_UNLOCK register. A read of this register returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_LOCK@0XF8000004</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -</TABLE> -<P> -<H2><a name="ps7_peripherals_init_data_3_0">ps7_peripherals_init_data_3_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_UNLOCK"> -SLCR_UNLOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DATA0"> -DDRIOB_DATA0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B48</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Config for Data 15:0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DATA1"> -DDRIOB_DATA1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B4C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Config for Data 31:16</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DIFF0"> -DDRIOB_DIFF0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B50</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Config for DQS 1:0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DIFF1"> -DDRIOB_DIFF1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B54</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Config for DQS 3:2</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_LOCK"> -SLCR_LOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#Baud_rate_divider_reg0"> -Baud_rate_divider_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0001034</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Baud Rate Divider Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#Baud_rate_gen_reg0"> -Baud_rate_gen_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0001018</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Baud Rate Generator Register.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#Control_reg0"> -Control_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0001000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART Control Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#mode_reg0"> -mode_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0001004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART Mode Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#Baud_rate_divider_reg0"> -Baud_rate_divider_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0000034</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Baud Rate Divider Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#Baud_rate_gen_reg0"> -Baud_rate_gen_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0000018</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Baud Rate Generator Register.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#Control_reg0"> -Control_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART Control Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#mode_reg0"> -mode_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART Mode Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#Config_reg"> -Config_reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000D000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SPI configuration register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CTRL"> -CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8007000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Control Register : This register defines basic control registers. Some of the register bits can be locked by control bits in the LOCK Register 0x004.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DIRM_1"> -DIRM_1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A244</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Direction mode (GPIO Bank1, MIO)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MASK_DATA_1_LSW"> -MASK_DATA_1_LSW -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Maskable Output Data (GPIO Bank1, MIO, Lower 16bits)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#OEN_1"> -OEN_1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A248</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Output enable (GPIO Bank1, MIO)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MASK_DATA_1_LSW"> -MASK_DATA_1_LSW -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Maskable Output Data (GPIO Bank1, MIO, Lower 16bits)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MASK_DATA_1_LSW"> -MASK_DATA_1_LSW -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Maskable Output Data (GPIO Bank1, MIO, Lower 16bits)</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ps7_peripherals_init_data_3_0">ps7_peripherals_init_data_3_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<H1>SLCR SETTINGS</H1> -<H2><a name="SLCR_UNLOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_UNLOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_UNLOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UNLOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write the unlock key, 0xDF0D, to enable writes to the slcr registers. All slcr registers, 0xF800_0000 to 0xF800_0B74, are writeable until locked using the SLCR_LOCK register. A read of this register returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_UNLOCK@0XF8000008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -</TABLE> -<P> -<H1>DDR TERM/IBUF_DISABLE_MODE SETTINGS</H1> -<H2><a name="DDRIOB_DATA0">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DATA0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DATA0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B48</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable NOTE: This must be 0 during DRAM init/training and can only be set to 1 after init/training completes.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Termination is used during read transactions and may be disabled (automatically by hardware) when there are no reads taking place through the DDR Interface. Disabling termination reduces power consumption. 0: termination always enabled 1: use 'dynamic_dci_ts' to disable termination when not in use NOTE: This bit must be 0 during DRAM init/training. It may be set to 1 after init/training completes.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DATA0@0XF8000B48</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>180</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>180</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Config for Data 15:0</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DATA1">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DATA1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DATA1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B4C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable NOTE: This must be 0 during DRAM init/training and can only be set to 1 after init/training completes.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Termination is used during read transactions and may be disabled (automatically by hardware) when there are no reads taking place through the DDR Interface. Disabling termination reduces power consumption. 0: termination always enabled 1: use 'dynamic_dci_ts' to disable termination when not in use NOTE: This bit must be 0 during DRAM init/training. It may be set to 1 after init/training completes.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DATA1@0XF8000B4C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>180</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>180</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Config for Data 31:16</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DIFF0">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DIFF0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DIFF0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B50</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable NOTE: This must be 0 during DRAM init/training and can only be set to 1 after init/training completes.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Termination is used during read transactions and may be disabled (automatically by hardware) when there are no reads taking place through the DDR Interface. Disabling termination reduces power consumption. 0: termination always enabled 1: use 'dynamic_dci_ts' to disable termination when not in use NOTE: This bit must be 0 during DRAM init/training. It may be set to 1 after init/training completes.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DIFF0@0XF8000B50</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>180</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>180</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Config for DQS 1:0</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DIFF1">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DIFF1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DIFF1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B54</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable NOTE: This must be 0 during DRAM init/training and can only be set to 1 after init/training completes.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Termination is used during read transactions and may be disabled (automatically by hardware) when there are no reads taking place through the DDR Interface. Disabling termination reduces power consumption. 0: termination always enabled 1: use 'dynamic_dci_ts' to disable termination when not in use NOTE: This bit must be 0 during DRAM init/training. It may be set to 1 after init/training completes.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DIFF1@0XF8000B54</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>180</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>180</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Config for DQS 3:2</B> -</TD> -</TR> -</TABLE> -<P> -<H1>LOCK IT BACK</H1> -<H2><a name="SLCR_LOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_LOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_LOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write the lock key, 0x767B, to write protect the slcr registers: all slcr registers, 0xF800_0000 to 0xF800_0B74, are write protected until the unlock key is written to the SLCR_UNLOCK register. A read of this register returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_LOCK@0XF8000004</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -<H1>SRAM/NOR SET OPMODE</H1> -<H1>UART REGISTERS</H1> -<H2><a name="Baud_rate_divider_reg0">Register (<A href=#mod___slcr> slcr </A>)Baud_rate_divider_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Baud_rate_divider_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0001034</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>BDIV</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Baud rate divider value: 0 - 3: ignored 4 - 255: Baud rate</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>Baud_rate_divider_reg0@0XE0001034</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>6</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Baud Rate Divider Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="Baud_rate_gen_reg0">Register (<A href=#mod___slcr> slcr </A>)Baud_rate_gen_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Baud_rate_gen_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0001018</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CD</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Baud Rate Clock Divisor Value: 0: Disables baud_sample 1: Clock divisor bypass (baud_sample = sel_clk) 2 - 65535: baud_sample</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>Baud_rate_gen_reg0@0XE0001018</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>7c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Baud Rate Generator Register.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="Control_reg0">Register (<A href=#mod___slcr> slcr </A>)Control_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Control_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0001000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>STPBRK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Stop transmitter break: 0: no affect 1: stop transmission of the break after a minimum of one character length and transmit a high level during 12 bit periods. It can be set regardless of the value of STTBRK.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>STTBRK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Start transmitter break: 0: no affect 1: start to transmit a break after the characters currently present in the FIFO and the transmit shift register have been transmitted. It can only be set if STPBRK (Stop transmitter break) is not high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RSTTO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Restart receiver timeout counter: 1: receiver timeout counter is restarted. This bit is self clearing once the restart has completed.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TXDIS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Transmit disable: 0: enable transmitter 1: disable transmitter</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TXEN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Transmit enable: 0: disable transmitter 1: enable transmitter, provided the TXDIS field is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RXDIS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Receive disable: 0: enable 1: disable, regardless of the value of RXEN</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RXEN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Receive enable: 0: disable 1: enable When set to one, the receiver logic is enabled, provided the RXDIS field is set to zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TXRES</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Software reset for Tx data path: 0: no affect 1: transmitter logic is reset and all pending transmitter data is discarded This bit is self clearing once the reset has completed.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RXRES</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Software reset for Rx data path: 0: no affect 1: receiver logic is reset and all pending receiver data is discarded. This bit is self clearing once the reset has completed.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>Control_reg0@0XE0001000</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>17</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>UART Control Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="mode_reg0">Register (<A href=#mod___slcr> slcr </A>)mode_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>mode_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0001004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHMODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>300</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Channel mode: Defines the mode of operation of the UART. 00: normal 01: automatic echo 10: local loopback 11: remote loopback</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>NBSTOP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of stop bits: Defines the number of stop bits to detect on receive and to generate on transmit. 00: 1 stop bit 01: 1.5 stop bits 10: 2 stop bits 11: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PAR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>38</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Parity type select: Defines the expected parity to check on receive and the parity to generate on transmit. 000: even parity 001: odd parity 010: forced to 0 parity (space) 011: forced to 1 parity (mark) 1xx: no parity</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Character length select: Defines the number of bits in each character. 11: 6 bits 10: 7 bits 0x: 8 bits</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clock source select: This field defines whether a pre-scalar of 8 is applied to the baud rate generator input clock. 0: clock source is uart_ref_clk 1: clock source is uart_ref_clk/8</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>mode_reg0@0XE0001004</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>UART Mode Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="Baud_rate_divider_reg0">Register (<A href=#mod___slcr> slcr </A>)Baud_rate_divider_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Baud_rate_divider_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0000034</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>BDIV</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Baud rate divider value: 0 - 3: ignored 4 - 255: Baud rate</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>Baud_rate_divider_reg0@0XE0000034</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>6</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Baud Rate Divider Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="Baud_rate_gen_reg0">Register (<A href=#mod___slcr> slcr </A>)Baud_rate_gen_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Baud_rate_gen_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0000018</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CD</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Baud Rate Clock Divisor Value: 0: Disables baud_sample 1: Clock divisor bypass (baud_sample = sel_clk) 2 - 65535: baud_sample</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>Baud_rate_gen_reg0@0XE0000018</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>7c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Baud Rate Generator Register.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="Control_reg0">Register (<A href=#mod___slcr> slcr </A>)Control_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Control_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>STPBRK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Stop transmitter break: 0: no affect 1: stop transmission of the break after a minimum of one character length and transmit a high level during 12 bit periods. It can be set regardless of the value of STTBRK.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>STTBRK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Start transmitter break: 0: no affect 1: start to transmit a break after the characters currently present in the FIFO and the transmit shift register have been transmitted. It can only be set if STPBRK (Stop transmitter break) is not high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RSTTO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Restart receiver timeout counter: 1: receiver timeout counter is restarted. This bit is self clearing once the restart has completed.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TXDIS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Transmit disable: 0: enable transmitter 1: disable transmitter</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TXEN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Transmit enable: 0: disable transmitter 1: enable transmitter, provided the TXDIS field is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RXDIS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Receive disable: 0: enable 1: disable, regardless of the value of RXEN</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RXEN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Receive enable: 0: disable 1: enable When set to one, the receiver logic is enabled, provided the RXDIS field is set to zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TXRES</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Software reset for Tx data path: 0: no affect 1: transmitter logic is reset and all pending transmitter data is discarded This bit is self clearing once the reset has completed.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RXRES</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Software reset for Rx data path: 0: no affect 1: receiver logic is reset and all pending receiver data is discarded. This bit is self clearing once the reset has completed.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>Control_reg0@0XE0000000</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>17</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>UART Control Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="mode_reg0">Register (<A href=#mod___slcr> slcr </A>)mode_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>mode_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHMODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>300</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Channel mode: Defines the mode of operation of the UART. 00: normal 01: automatic echo 10: local loopback 11: remote loopback</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>NBSTOP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of stop bits: Defines the number of stop bits to detect on receive and to generate on transmit. 00: 1 stop bit 01: 1.5 stop bits 10: 2 stop bits 11: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PAR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>38</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Parity type select: Defines the expected parity to check on receive and the parity to generate on transmit. 000: even parity 001: odd parity 010: forced to 0 parity (space) 011: forced to 1 parity (mark) 1xx: no parity</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Character length select: Defines the number of bits in each character. 11: 6 bits 10: 7 bits 0x: 8 bits</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clock source select: This field defines whether a pre-scalar of 8 is applied to the baud rate generator input clock. 0: clock source is uart_ref_clk 1: clock source is uart_ref_clk/8</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>mode_reg0@0XE0000004</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>UART Mode Register</B> -</TD> -</TR> -</TABLE> -<P> -<H1>QSPI REGISTERS</H1> -<H2><a name="Config_reg">Register (<A href=#mod___slcr> slcr </A>)Config_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Config_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000D000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Holdb_dr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If set, Holdb and WPn pins are actively driven by the qspi controller in 1-bit and 2-bit modes . If not set, then external pull up is required on HOLDb and WPn pins . Note that this bit doesn't affect the quad(4-bit) mode as Controller always drives these pins in quad mode. It is highly recommended to set this bit always(irrespective of mode of operation) while using QSPI</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>Config_reg@0XE000D000</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>80000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SPI configuration register</B> -</TD> -</TR> -</TABLE> -<P> -<H1>PL POWER ON RESET REGISTERS</H1> -<H2><a name="CTRL">Register (<A href=#mod___slcr> slcr </A>)CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8007000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PCFG_POR_CNT_4K</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>29:29</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This register controls which POR timer the PL will use for power-up. 0 - Use 64k timer 1 - Use 4k timer</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CTRL@0XF8007000</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>20000000</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Control Register : This register defines basic control registers. Some of the register bits can be locked by control bits in the LOCK Register 0x004.</B> -</TD> -</TR> -</TABLE> -<P> -<H1>SMC TIMING CALCULATION REGISTER UPDATE</H1> -<H1>NAND SET CYCLE</H1> -<H1>OPMODE</H1> -<H1>DIRECT COMMAND</H1> -<H1>SRAM/NOR CS0 SET CYCLE</H1> -<H1>DIRECT COMMAND</H1> -<H1>NOR CS0 BASE ADDRESS</H1> -<H1>SRAM/NOR CS1 SET CYCLE</H1> -<H1>DIRECT COMMAND</H1> -<H1>NOR CS1 BASE ADDRESS</H1> -<H1>USB RESET</H1> -<H1>USB0 RESET</H1> -<H1>DIR MODE BANK 0</H1> -<H1>DIR MODE BANK 1</H1> -<H2><a name="DIRM_1">Register (<A href=#mod___slcr> slcr </A>)DIRM_1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIRM_1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A244</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIRECTION_1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3fffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operation is the same as DIRM_0[DIRECTION_0]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DIRM_1@0XE000A244</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>4000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Direction mode (GPIO Bank1, MIO)</B> -</TD> -</TR> -</TABLE> -<P> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H2><a name="MASK_DATA_1_LSW">Register (<A href=#mod___slcr> slcr </A>)MASK_DATA_1_LSW</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MASK_DATA_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MASK_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>bfff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>bfff0000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operation is the same as MASK_DATA_0_LSW[MASK_0_LSW]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DATA_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operation is the same as MASK_DATA_0_LSW[DATA_0_LSW]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MASK_DATA_1_LSW@0XE000A008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>bfff4000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Maskable Output Data (GPIO Bank1, MIO, Lower 16bits)</B> -</TD> -</TR> -</TABLE> -<P> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>OUTPUT ENABLE BANK 0</H1> -<H1>OUTPUT ENABLE BANK 1</H1> -<H2><a name="OEN_1">Register (<A href=#mod___slcr> slcr </A>)OEN_1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OEN_1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A248</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OP_ENABLE_1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3fffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operation is the same as OEN_0[OP_ENABLE_0]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>OEN_1@0XE000A248</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>4000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Output enable (GPIO Bank1, MIO)</B> -</TD> -</TR> -</TABLE> -<P> -<H1>MASK_DATA_0_LSW LOW BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW LOW BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW LOW BANK [47:32]</H1> -<H2><a name="MASK_DATA_1_LSW">Register (<A href=#mod___slcr> slcr </A>)MASK_DATA_1_LSW</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MASK_DATA_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MASK_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>bfff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>bfff0000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operation is the same as MASK_DATA_0_LSW[MASK_0_LSW]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DATA_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operation is the same as MASK_DATA_0_LSW[DATA_0_LSW]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MASK_DATA_1_LSW@0XE000A008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>bfff0000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Maskable Output Data (GPIO Bank1, MIO, Lower 16bits)</B> -</TD> -</TR> -</TABLE> -<P> -<H1>MASK_DATA_1_MSW LOW BANK [53:48]</H1> -<H1>ADD 1 MS DELAY</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H2><a name="MASK_DATA_1_LSW">Register (<A href=#mod___slcr> slcr </A>)MASK_DATA_1_LSW</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MASK_DATA_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MASK_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>bfff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>bfff0000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operation is the same as MASK_DATA_0_LSW[MASK_0_LSW]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DATA_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operation is the same as MASK_DATA_0_LSW[DATA_0_LSW]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MASK_DATA_1_LSW@0XE000A008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>bfff4000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Maskable Output Data (GPIO Bank1, MIO, Lower 16bits)</B> -</TD> -</TR> -</TABLE> -<P> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>USB1 RESET</H1> -<H1>DIR MODE BANK 0</H1> -<H1>DIR MODE BANK 1</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>OUTPUT ENABLE BANK 0</H1> -<H1>OUTPUT ENABLE BANK 1</H1> -<H1>MASK_DATA_0_LSW LOW BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW LOW BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW LOW BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW LOW BANK [53:48]</H1> -<H1>ADD 1 MS DELAY</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>ENET RESET</H1> -<H1>ENET0 RESET</H1> -<H1>DIR MODE BANK 0</H1> -<H1>DIR MODE BANK 1</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>OUTPUT ENABLE BANK 0</H1> -<H1>OUTPUT ENABLE BANK 1</H1> -<H1>MASK_DATA_0_LSW LOW BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW LOW BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW LOW BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW LOW BANK [53:48]</H1> -<H1>ADD 1 MS DELAY</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>ENET1 RESET</H1> -<H1>DIR MODE BANK 0</H1> -<H1>DIR MODE BANK 1</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>OUTPUT ENABLE BANK 0</H1> -<H1>OUTPUT ENABLE BANK 1</H1> -<H1>MASK_DATA_0_LSW LOW BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW LOW BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW LOW BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW LOW BANK [53:48]</H1> -<H1>ADD 1 MS DELAY</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>I2C RESET</H1> -<H1>I2C0 RESET</H1> -<H1>DIR MODE GPIO BANK0</H1> -<H1>DIR MODE GPIO BANK1</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>OUTPUT ENABLE</H1> -<H1>OUTPUT ENABLE</H1> -<H1>MASK_DATA_0_LSW LOW BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW LOW BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW LOW BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW LOW BANK [53:48]</H1> -<H1>ADD 1 MS DELAY</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>I2C1 RESET</H1> -<H1>DIR MODE GPIO BANK0</H1> -<H1>DIR MODE GPIO BANK1</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>OUTPUT ENABLE</H1> -<H1>OUTPUT ENABLE</H1> -<H1>MASK_DATA_0_LSW LOW BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW LOW BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW LOW BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW LOW BANK [53:48]</H1> -<H1>ADD 1 MS DELAY</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>NOR CHIP SELECT</H1> -<H1>DIR MODE BANK 0</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>OUTPUT ENABLE BANK 0</H1> -</TABLE> -<P> -<H2><a name="ps7_post_config_3_0">ps7_post_config_3_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_UNLOCK"> -SLCR_UNLOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#LVL_SHFTR_EN"> -LVL_SHFTR_EN -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000900</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level Shifters Enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#FPGA_RST_CTRL"> -FPGA_RST_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000240</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FPGA Software Reset Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_LOCK"> -SLCR_LOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ps7_post_config_3_0">ps7_post_config_3_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<H1>SLCR SETTINGS</H1> -<H2><a name="SLCR_UNLOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_UNLOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_UNLOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UNLOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write the unlock key, 0xDF0D, to enable writes to the slcr registers. All slcr registers, 0xF800_0000 to 0xF800_0B74, are writeable until locked using the SLCR_LOCK register. A read of this register returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_UNLOCK@0XF8000008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -</TABLE> -<P> -<H1>ENABLING LEVEL SHIFTER</H1> -<H2><a name="LVL_SHFTR_EN">Register (<A href=#mod___slcr> slcr </A>)LVL_SHFTR_EN</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LVL_SHFTR_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000900</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>USER_LVL_INP_EN_0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level shifter enable to drive signals from PL to PS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>USER_LVL_OUT_EN_0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level shifter enable to drive signals from PS to PL</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>USER_LVL_INP_EN_1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level shifter enable to drive signals from PL to PS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>USER_LVL_OUT_EN_1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level shifter enable to drive signals from PS to PL</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>LVL_SHFTR_EN@0XF8000900</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>f</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Level Shifters Enable</B> -</TD> -</TR> -</TABLE> -<P> -<H1>FPGA RESETS TO 0</H1> -<H2><a name="FPGA_RST_CTRL">Register (<A href=#mod___slcr> slcr </A>)FPGA_RST_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_RST_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000240</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:25</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fe000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Writes are ignored, read data is zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_FPGA_ACP_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>24:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_FPGA_AXDS3_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:23</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_FPGA_AXDS2_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>22:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_FPGA_AXDS1_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:21</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_FPGA_AXDS0_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Writes are ignored, read data is zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_FSSW1_FPGA_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_FSSW0_FPGA_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Writes are ignored, read data is zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_FPGA_FMSW1_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_FPGA_FMSW0_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_FPGA_DMA3_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_FPGA_DMA2_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_FPGA_DMA1_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_FPGA_DMA0_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Do not modify.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Writes are ignored, read data is zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA3_OUT_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PL Reset 3 (FCLKRESETN3 output signal). Refer to the PS7 wrapper in EDK for possible signal inversion. Logic level on the FCLKRESETN3 signal: 0: De-assert reset (High logic level). 1: Assert Reset (Low logic state)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA2_OUT_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PL Reset 2 (FCLKRESETN2 output signal). Refer to the PS7 wrapper in EDK for possible signal inversion. Logic level on the FCLKRESETN2 signal: 0: De-assert reset (High logic level). 1: Assert Reset (Low logic state)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA1_OUT_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PL Reset 1 (FCLKRESETN1 output signal). Refer to the PS7 wrapper in EDK for possible signal inversion. Logic level on the FCLKRESETN1 signal: 0: De-assert reset (High logic level). 1: Assert Reset (Low logic state)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA0_OUT_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PL Reset 0 (FCLKRESETN0 output signal). Refer to the PS7 wrapper in EDK for possible signal inversion. Logic level on the FCLKRESETN0 signal: 0: De-assert reset (High logic level). 1: Assert Reset (Low logic state)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>FPGA_RST_CTRL@0XF8000240</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>FPGA Software Reset Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>AFI REGISTERS</H1> -<H1>AFI0 REGISTERS</H1> -<H1>AFI1 REGISTERS</H1> -<H1>AFI2 REGISTERS</H1> -<H1>AFI3 REGISTERS</H1> -<H1>AFI2 SECURE REGISTER</H1> -<H1>LOCK IT BACK</H1> -<H2><a name="SLCR_LOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_LOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_LOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write the lock key, 0x767B, to write protect the slcr registers: all slcr registers, 0xF800_0000 to 0xF800_0B74, are write protected until the unlock key is written to the SLCR_UNLOCK register. A read of this register returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_LOCK@0XF8000004</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -</TABLE> -<P> -<H2><a name="ps7_debug_3_0">ps7_debug_3_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#LAR"> -LAR -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8898FB0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Lock Access Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#LAR"> -LAR -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8899FB0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Lock Access Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#LAR"> -LAR -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8809FB0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Lock Access Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ps7_debug_3_0">ps7_debug_3_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<H1>CROSS TRIGGER CONFIGURATIONS</H1> -<H1>UNLOCKING CTI REGISTERS</H1> -<H2><a name="LAR">Register (<A href=#mod___slcr> slcr </A>)LAR</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LAR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8898FB0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c5acce55</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c5acce55</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write Access Code. Write behavior depends on PADDRDBG31 pin: - PADDRDBG31=0 (lower 2GB): After reset (via PRESETDBGn), CTI is locked, i.e., writes to all other registers using lower 2GB addresses are ignored. To unlock, 0xC5ACCE55 must be written this register. After the required registers are written, to lock again, write a value other than 0xC5ACCE55 to this register. - PADDRDBG31=1 (upper 2GB): CTI is unlocked when upper 2GB addresses are used to write to all the registers. However, write to this register is ignored using a upper 2GB address! Note: read from this register always returns 0, regardless of PADDRDBG31.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>LAR@0XF8898FB0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>c5acce55</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Lock Access Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="LAR">Register (<A href=#mod___slcr> slcr </A>)LAR</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LAR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8899FB0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c5acce55</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c5acce55</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write Access Code. Write behavior depends on PADDRDBG31 pin: - PADDRDBG31=0 (lower 2GB): After reset (via PRESETDBGn), CTI is locked, i.e., writes to all other registers using lower 2GB addresses are ignored. To unlock, 0xC5ACCE55 must be written this register. After the required registers are written, to lock again, write a value other than 0xC5ACCE55 to this register. - PADDRDBG31=1 (upper 2GB): CTI is unlocked when upper 2GB addresses are used to write to all the registers. However, write to this register is ignored using a upper 2GB address! Note: read from this register always returns 0, regardless of PADDRDBG31.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>LAR@0XF8899FB0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>c5acce55</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Lock Access Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="LAR">Register (<A href=#mod___slcr> slcr </A>)LAR</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LAR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8809FB0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c5acce55</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c5acce55</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write Access Code. Write behavior depends on PADDRDBG31 pin: - PADDRDBG31=0 (lower 2GB): After reset (via PRESETDBGn), CTI is locked, i.e., writes to all other registers using lower 2GB addresses are ignored. To unlock, 0xC5ACCE55 must be written this register. After the required registers are written, to lock again, write a value other than 0xC5ACCE55 to this register. - PADDRDBG31=1 (upper 2GB): CTI is unlocked when upper 2GB addresses are used to write to all the registers. However, write to this register is ignored using a upper 2GB address! Note: read from this register always returns 0, regardless of PADDRDBG31.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>LAR@0XF8809FB0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>c5acce55</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Lock Access Register</B> -</TD> -</TR> -</TABLE> -<P> -<H1>ENABLING CTI MODULES AND CHANNELS</H1> -<H1>MAPPING CPU0, CPU1 AND FTM EVENTS TO CTM CHANNELS</H1> -</TABLE> -<P> -</body> -</head> -</body> -</html> -<H2><a name="ps7_pll_init_data_2_0">ps7_pll_init_data_2_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_UNLOCK"> -SLCR_UNLOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ARM_PLL_CFG"> -ARM_PLL_CFG -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000110</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL Configuration</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ARM_PLL_CTRL"> -ARM_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ARM_PLL_CTRL"> -ARM_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ARM_PLL_CTRL"> -ARM_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ARM_PLL_CTRL"> -ARM_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ARM_PLL_CTRL"> -ARM_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ARM_CLK_CTRL"> -ARM_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000120</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>CPU Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDR_PLL_CFG"> -DDR_PLL_CFG -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000114</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR PLL Configuration</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDR_PLL_CTRL"> -DDR_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDR_PLL_CTRL"> -DDR_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDR_PLL_CTRL"> -DDR_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDR_PLL_CTRL"> -DDR_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDR_PLL_CTRL"> -DDR_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDR_CLK_CTRL"> -DDR_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000124</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#IO_PLL_CFG"> -IO_PLL_CFG -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000118</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>IO PLL Configuration</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#IO_PLL_CTRL"> -IO_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>IO PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#IO_PLL_CTRL"> -IO_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>IO PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#IO_PLL_CTRL"> -IO_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>IO PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#IO_PLL_CTRL"> -IO_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>IO PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#IO_PLL_CTRL"> -IO_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>IO PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_LOCK"> -SLCR_LOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ps7_pll_init_data_2_0">ps7_pll_init_data_2_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<H1>SLCR SETTINGS</H1> -<H2><a name="SLCR_UNLOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_UNLOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_UNLOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UNLOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When write data contains the unlock key value of 0xDF0D, the write protection mode is disabled. All registers defined in SLCR are writeable until locked again through the SLCR_LOCK register. A read of this register returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_UNLOCK@0XF8000008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -</TABLE> -<P> -<H1>PLL SLCR REGISTERS</H1> -<H1>ARM PLL INIT</H1> -<H2><a name="ARM_PLL_CFG">Register (<A href=#mod___slcr> slcr </A>)ARM_PLL_CFG</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ARM_PLL_CFG</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000110</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RES</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive the PLL_RES[3:0] input of the PLL to set the PLL loop filter resistor control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_CP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive the PLL_CP[3:0] input of the PLL to set the PLL charge pump control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LOCK_CNT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>177</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>177000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive the LOCK_CNT[9:0] input of the PLL to set the number of clock cycles the PLL needs to have clkref and clkfb aligned withth a certain window before syaing locked.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ARM_PLL_CFG@0XF8000110</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffff0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1772c0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ARM PLL Configuration</B> -</TD> -</TR> -</TABLE> -<P> -<H1>UPDATE FB_DIV</H1> -<H2><a name="ARM_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)ARM_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ARM_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_FDIV</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1a</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1a000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provide the feedback divisor for the PLL. Note: Before changing this value, the PLL must first be bypassed and then put into powerdown or reset state.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ARM_PLL_CTRL@0XF8000100</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7f000</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1a000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ARM PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>BY PASS PLL</H1> -<H2><a name="ARM_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)ARM_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ARM_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_BYPASS_FORCE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL Bypass override control: PLL_BYPASS_QUAL = 0: 0: enabled, not bypassed. 1: bypassed. PLL_BYPASS_QUAL =1: 0: 1: bypass mode regardless of the pin strapping.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ARM_PLL_CTRL@0XF8000100</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ARM PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>ASSERT RESET</H1> -<H2><a name="ARM_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)ARM_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ARM_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive the RESET input of the PLL: 0: PLL out of reset 1: PLL held in reset. After reset, program the PLLs and ensure that the serviced bit is asserted before using.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ARM_PLL_CTRL@0XF8000100</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ARM PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>DEASSERT RESET</H1> -<H2><a name="ARM_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)ARM_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ARM_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive the RESET input of the PLL: 0: PLL out of reset 1: PLL held in reset. After reset, program the PLLs and ensure that the serviced bit is asserted before using.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ARM_PLL_CTRL@0XF8000100</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ARM PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>CHECK PLL STATUS</H1> -<H2><a name="PLL_STATUS">Register (<A href=#mod___slcr> slcr </A>)PLL_STATUS</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_STATUS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800010C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ARM_PLL_LOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL lock status: 0: not locked, 1: locked</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>PLL_STATUS@0XF800010C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>tobe</B> -</TD> -</TR> -</TABLE> -<P> -<H1>REMOVE PLL BY PASS</H1> -<H2><a name="ARM_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)ARM_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ARM_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_BYPASS_FORCE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL Bypass override control: PLL_BYPASS_QUAL = 0: 0: enabled, not bypassed. 1: bypassed. PLL_BYPASS_QUAL =1: 0: 1: bypass mode regardless of the pin strapping.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ARM_PLL_CTRL@0XF8000100</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ARM PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ARM_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)ARM_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ARM_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000120</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRCSEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Select the source used to generate the CPU clock: 0x: CPU PLL 10: divided DDR PLL 11: IO PLL</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Frequency divisor for the CPU clock source.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CPU_6OR4XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>24:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>CPU_6x4x Clock control: 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CPU_3OR2XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:25</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>CPU_3x2x Clock control: 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CPU_2XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:26</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>CPU_2x Clock control: 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>CPU_1x Clock control: 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CPU_PERI_CLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>28:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clock active: 0: Clock is disabled 1: Clock is enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ARM_CLK_CTRL@0XF8000120</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1f003f30</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1f000200</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>CPU Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>DDR PLL INIT</H1> -<H2><a name="DDR_PLL_CFG">Register (<A href=#mod___slcr> slcr </A>)DDR_PLL_CFG</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_PLL_CFG</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000114</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RES</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive the PLL_RES[3:0] input of the PLL to set the PLL loop filter resistor control.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_CP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive the PLL_CP[3:0] input of the PLL to set the PLL charge pump control.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LOCK_CNT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1db</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1db000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive the LOCK_CNT[9:0] input of the PLL to set the number of clock cycles the PLL needs to have clkref and clkfb aligned withth a certain window before staying locked.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDR_PLL_CFG@0XF8000114</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffff0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1db2c0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR PLL Configuration</B> -</TD> -</TR> -</TABLE> -<P> -<H1>UPDATE FB_DIV</H1> -<H2><a name="DDR_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDR_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_FDIV</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>15</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provide the feedback divisor for the PLL. Note: Before changing this value, the PLL must first be bypassed and then put into powerdown or reset state.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDR_PLL_CTRL@0XF8000104</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7f000</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>15000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>BY PASS PLL</H1> -<H2><a name="DDR_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDR_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_BYPASS_FORCE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Overide control of the PLL bypass function within the clock controller to force into bypass state: 0: PLL not forced to be bypassed (may still be bypassed through bootstrap pin). 1: PLL forced to be bypassed</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDR_PLL_CTRL@0XF8000104</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>ASSERT RESET</H1> -<H2><a name="DDR_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDR_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive the RESET input of the PLL: 0: PLL out of reset 1: PLL held in reset Remember that after reset, program the PLLs and ensure that the serviced bit below is asserted before using.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDR_PLL_CTRL@0XF8000104</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>DEASSERT RESET</H1> -<H2><a name="DDR_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDR_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive the RESET input of the PLL: 0: PLL out of reset 1: PLL held in reset Remember that after reset, program the PLLs and ensure that the serviced bit below is asserted before using.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDR_PLL_CTRL@0XF8000104</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>CHECK PLL STATUS</H1> -<H2><a name="PLL_STATUS">Register (<A href=#mod___slcr> slcr </A>)PLL_STATUS</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_STATUS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800010C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_PLL_LOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR PLL lock status: 0: not locked, 1: locked</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>PLL_STATUS@0XF800010C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>tobe</B> -</TD> -</TR> -</TABLE> -<P> -<H1>REMOVE PLL BY PASS</H1> -<H2><a name="DDR_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDR_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_BYPASS_FORCE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Overide control of the PLL bypass function within the clock controller to force into bypass state: 0: PLL not forced to be bypassed (may still be bypassed through bootstrap pin). 1: PLL forced to be bypassed</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDR_PLL_CTRL@0XF8000104</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDR_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDR_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000124</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_3XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR_3x Clock control: 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_2XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR_2x Clock control: 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_3XCLK_DIVISOR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Frequency divisor for the ddr_3x clock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_2XCLK_DIVISOR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:26</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fc000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Frequency divisor for the ddr_2x clock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDR_CLK_CTRL@0XF8000124</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff00003</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>c200003</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>IO PLL INIT</H1> -<H2><a name="IO_PLL_CFG">Register (<A href=#mod___slcr> slcr </A>)IO_PLL_CFG</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_PLL_CFG</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000118</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RES</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive the PLL_RES[3:0] input of the PLL to set the PLL loop filter resistor control.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_CP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive the PLL_CP[3:0] input of the PLL to set the PLL charge pump control.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LOCK_CNT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1f4000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive the LOCK_CNT[9:0] input of the PLL to set the number of clock cycles the PLL needs to have clkref and clkfb aligned withth a certain window before staying locked.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>IO_PLL_CFG@0XF8000118</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffff0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1f42c0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>IO PLL Configuration</B> -</TD> -</TR> -</TABLE> -<P> -<H1>UPDATE FB_DIV</H1> -<H2><a name="IO_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)IO_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_FDIV</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>14</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provide the feedback divisor for the PLL. Note: Before changing this value, the PLL must first be bypassed and then put into powerdown or reset state.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>IO_PLL_CTRL@0XF8000108</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7f000</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>14000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>IO PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>BY PASS PLL</H1> -<H2><a name="IO_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)IO_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_BYPASS_FORCE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Overide control of the PLL bypass function within the clock controller to force into bypass state: 0: PLL not forced to be bypassed (may still be bypassed through bootstrap pin). 1: PLL forced to be bypassed</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>IO_PLL_CTRL@0XF8000108</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>IO PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>ASSERT RESET</H1> -<H2><a name="IO_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)IO_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive the RESET input of the PLL: 0: PLL out of reset. 1: PLL held in reset. Remember that after a reset, program the PLLs and ensure that the serviced bit below is asserted before using.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>IO_PLL_CTRL@0XF8000108</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>IO PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>DEASSERT RESET</H1> -<H2><a name="IO_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)IO_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drive the RESET input of the PLL: 0: PLL out of reset. 1: PLL held in reset. Remember that after a reset, program the PLLs and ensure that the serviced bit below is asserted before using.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>IO_PLL_CTRL@0XF8000108</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>IO PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>CHECK PLL STATUS</H1> -<H2><a name="PLL_STATUS">Register (<A href=#mod___slcr> slcr </A>)PLL_STATUS</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_STATUS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800010C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_PLL_LOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>IO PLL lock status: 0: not locked, 1: locked</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>PLL_STATUS@0XF800010C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>tobe</B> -</TD> -</TR> -</TABLE> -<P> -<H1>REMOVE PLL BY PASS</H1> -<H2><a name="IO_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)IO_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_BYPASS_FORCE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Overide control of the PLL bypass function within the clock controller to force into bypass state: 0: PLL not forced to be bypassed (may still be bypassed through bootstrap pin). 1: PLL forced to be bypassed</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>IO_PLL_CTRL@0XF8000108</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>IO PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>LOCK IT BACK</H1> -<H2><a name="SLCR_LOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_LOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_LOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When write data contains the lock key value of 0x767B, the write protection mode is enabled. All registers defined in SLCR are write protected until unlocked again through the SLCR_UNLOCK register. A read of this register returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_LOCK@0XF8000004</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -</TABLE> -<P> -<H2><a name="ps7_clock_init_data_2_0">ps7_clock_init_data_2_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_UNLOCK"> -SLCR_UNLOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DCI_CLK_CTRL"> -DCI_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000128</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI clock control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#GEM0_RCLK_CTRL"> -GEM0_RCLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000138</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>GigE 0 Rx Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#GEM0_CLK_CTRL"> -GEM0_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000140</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>GigE 0 Ref Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#LQSPI_CLK_CTRL"> -LQSPI_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800014C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Quad SPI Ref Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SDIO_CLK_CTRL"> -SDIO_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000150</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SDIO Ref Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#UART_CLK_CTRL"> -UART_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000154</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART Ref Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#PCAP_CLK_CTRL"> -PCAP_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000168</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PCAP Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#FPGA0_CLK_CTRL"> -FPGA0_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000170</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PL Clock 0 Output control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CLK_621_TRUE"> -CLK_621_TRUE -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80001C4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>CPU Clock Ratio Mode select</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#APER_CLK_CTRL"> -APER_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800012C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AMBA Peripheral Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_LOCK"> -SLCR_LOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ps7_clock_init_data_2_0">ps7_clock_init_data_2_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<H1>SLCR SETTINGS</H1> -<H2><a name="SLCR_UNLOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_UNLOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_UNLOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UNLOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When write data contains the unlock key value of 0xDF0D, the write protection mode is disabled. All registers defined in SLCR are writeable until locked again through the SLCR_LOCK register. A read of this register returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_UNLOCK@0XF8000008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -</TABLE> -<P> -<H1>CLOCK CONTROL SLCR REGISTERS</H1> -<H2><a name="DCI_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)DCI_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000128</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI clock control - 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>34</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3400</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the divisor used to divide the source clock to generate the required generated clock frequency.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the divisor used to divide the source clock to generate the required generated clock frequency. Second cascade divider</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DCI_CLK_CTRL@0XF8000128</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f03f01</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>203401</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DCI clock control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="GEM0_RCLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)GEM0_RCLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GEM0_RCLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000138</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ethernet Controler 0 Rx Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRCSEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Select the source to generate the Rx clock: 0: MIO Rx clock, 1: EMIO Rx clock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>GEM0_RCLK_CTRL@0XF8000138</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>11</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>GigE 0 Rx Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="GEM0_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)GEM0_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GEM0_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000140</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ethernet Controller 0 Reference Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRCSEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the source to generate the reference clock 00x: IO PLL. 010: ARM PLL. 011: DDR PLL 1xx: Ethernet controller 0 EMIO clock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>First divisor for Ethernet controller 0 source clock.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Second divisor for Ethernet controller 0 source clock.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>GEM0_CLK_CTRL@0XF8000140</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f03f71</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>100801</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>GigE 0 Ref Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="LQSPI_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)LQSPI_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LQSPI_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800014C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Quad SPI Controller Reference Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRCSEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Select clock source generate Quad SPI clock: 0x: IO PLL, 10: ARM PLL, 11: DDR PLL</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>500</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Divisor for Quad SPI Controller source clock.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>LQSPI_CLK_CTRL@0XF800014C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f31</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>501</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Quad SPI Ref Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="SDIO_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)SDIO_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SDIO_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000150</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SDIO Controller 0 Clock control. 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SDIO Controller 1 Clock control. 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRCSEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Select the source used to generate the clock. 0x: Source for generated clock is IO PLL. 10: Source for generated clock is ARM PLL. 11: Source for generated clock is DDR PLL.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>14</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1400</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the divisor used to divide the source clock to generate the required generated clock frequency.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SDIO_CLK_CTRL@0XF8000150</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f33</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1401</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SDIO Ref Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="UART_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)UART_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UART_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000154</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART 0 Reference clock control. 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART 1 reference clock active: 0: Clock is disabled 1: Clock is enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRCSEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the PLL source to generate the clock. 0x: IO PLL 10: ARM PLL 11: DDR PLL</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>a</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>a00</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Divisor for UART Controller source clock.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>UART_CLK_CTRL@0XF8000154</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f33</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>a03</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>UART Ref Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>TRACE CLOCK</H1> -<H2><a name="PCAP_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)PCAP_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PCAP_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000168</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clock active: 0: Clock is disabled 1: Clock is enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRCSEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Select the source used to generate the clock: 0x: Source for generated clock is IO PLL. 10: Source for generated clock is ARM PLL. 11: Source for generated clock is DDR PLL.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>500</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the divisor used to divide the source clock to generate the required generated clock frequency.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>PCAP_CLK_CTRL@0XF8000168</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f31</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>501</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PCAP Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="FPGA0_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)FPGA0_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA0_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000170</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRCSEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Select the source used to generate the clock: 0x: Source for generated clock is IO PLL. 10: Source for generated clock is ARM PLL. 11: Source for generated clock is DDR PLL.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>500</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the divisor used to divide the source clock to generate the required generated clock frequency. First cascade divider.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the divisor used to divide the source clock to generate the required generated clock frequency. Second cascade divide</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>FPGA0_CLK_CTRL@0XF8000170</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f03f30</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>200500</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PL Clock 0 Output control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="CLK_621_TRUE">Register (<A href=#mod___slcr> slcr </A>)CLK_621_TRUE</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLK_621_TRUE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80001C4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLK_621_TRUE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Select the CPU clock ration: 0: 4:2:1 1: 6:2:1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CLK_621_TRUE@0XF80001C4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>CPU Clock Ratio Mode select</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="APER_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)APER_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>APER_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800012C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DMA_CPU_2XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DMA controller AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>USB0_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>USB controller 0 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>USB1_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>USB controller 1 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GEM0_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Gigabit Ethernet 0 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GEM1_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Gigabit Ethernet 1 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SDI0_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SDIO controller 0 AMBA Clock 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SDI1_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SDIO controller 1 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SPI0_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SPI 0 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SPI1_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SPI 1 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CAN0_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>CAN 0 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CAN1_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>CAN 1 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>I2C0_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>I2C 0 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>I2C1_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>I2C 1 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UART0_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART 0 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UART1_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:21</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART 1 AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GPIO_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>22:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>400000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>GPIO AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LQSPI_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:23</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Quad SPI AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SMC_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>24:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SMC AMBA Clock control 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>APER_CLK_CTRL@0XF800012C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1ffcccd</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1fc044d</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AMBA Peripheral Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>THIS SHOULD BE BLANK</H1> -<H1>LOCK IT BACK</H1> -<H2><a name="SLCR_LOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_LOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_LOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When write data contains the lock key value of 0x767B, the write protection mode is enabled. All registers defined in SLCR are write protected until unlocked again through the SLCR_UNLOCK register. A read of this register returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_LOCK@0XF8000004</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -</TABLE> -<P> -<H2><a name="ps7_ddr_init_data_2_0">ps7_ddr_init_data_2_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ddrc_ctrl"> -ddrc_ctrl -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRC Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#Two_rank_cfg"> -Two_rank_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Two Rank Configuration</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#HPR_reg"> -HPR_reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>HPR Queue control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#LPR_reg"> -LPR_reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800600C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>LPR Queue control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#WR_reg"> -WR_reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006010</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>WR Queue control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_param_reg0"> -DRAM_param_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006014</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM Parameters 0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_param_reg1"> -DRAM_param_reg1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006018</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM Parameters 1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_param_reg2"> -DRAM_param_reg2 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800601C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM Parameters 2</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_param_reg3"> -DRAM_param_reg3 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006020</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM Parameters 3</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_param_reg4"> -DRAM_param_reg4 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006024</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM Parameters 4</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_init_param"> -DRAM_init_param -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006028</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM Initialization Parameters</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_EMR_reg"> -DRAM_EMR_reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800602C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM EMR2, EMR3 access</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_EMR_MR_reg"> -DRAM_EMR_MR_reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006030</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM EMR, MR access</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_burst8_rdwr"> -DRAM_burst8_rdwr -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006034</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM Burst 8 read/write</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_disable_DQ"> -DRAM_disable_DQ -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006038</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM Disable DQ</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_addr_map_bank"> -DRAM_addr_map_bank -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800603C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Row/Column address bits</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_addr_map_col"> -DRAM_addr_map_col -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006040</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Column address bits</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_addr_map_row"> -DRAM_addr_map_row -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006044</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Select DRAM row address bits</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_ODT_reg"> -DRAM_ODT_reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006048</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM ODT control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_cmd_timeout_rddata_cpt"> -phy_cmd_timeout_rddata_cpt -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006050</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY command time out and read data capture FIFO</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DLL_calib"> -DLL_calib -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006058</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DLL calibration</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ODT_delay_hold"> -ODT_delay_hold -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800605C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ODT delay and ODT hold</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ctrl_reg1"> -ctrl_reg1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006060</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controller 1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ctrl_reg2"> -ctrl_reg2 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006064</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controller 2</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ctrl_reg3"> -ctrl_reg3 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006068</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controller 3</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ctrl_reg4"> -ctrl_reg4 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800606C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controller 4</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ctrl_reg5"> -ctrl_reg5 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006078</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controller register 5</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ctrl_reg6"> -ctrl_reg6 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800607C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controller register 6</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CHE_REFRESH_TIMER01"> -CHE_REFRESH_TIMER01 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060A0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>CHE_REFRESH_TIMER01</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CHE_T_ZQ"> -CHE_T_ZQ -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060A4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ZQ parameters</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CHE_T_ZQ_Short_Interval_Reg"> -CHE_T_ZQ_Short_Interval_Reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060A8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Misc parameters</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#deep_pwrdwn_reg"> -deep_pwrdwn_reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060AC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Deep powerdown (LPDDR2)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#reg_2c"> -reg_2c -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060B0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Training control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#reg_2d"> -reg_2d -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060B4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Misc Debug</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#dfi_timing"> -dfi_timing -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060B8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DFI timing</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CHE_ECC_CONTROL_REG_OFFSET"> -CHE_ECC_CONTROL_REG_OFFSET -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060C4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ECC error clear</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CHE_CORR_ECC_LOG_REG_OFFSET"> -CHE_CORR_ECC_LOG_REG_OFFSET -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060C8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ECC error correction</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CHE_UNCORR_ECC_LOG_REG_OFFSET"> -CHE_UNCORR_ECC_LOG_REG_OFFSET -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060DC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ECC unrecoverable error status</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CHE_ECC_STATS_REG_OFFSET"> -CHE_ECC_STATS_REG_OFFSET -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060F0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ECC error count</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ECC_scrub"> -ECC_scrub -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060F4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ECC mode/scrub</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_rcvr_enable"> -phy_rcvr_enable -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006114</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Phy receiver enable register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#PHY_Config0"> -PHY_Config0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006118</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#PHY_Config1"> -PHY_Config1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800611C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY configuration register for data slice 1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#PHY_Config2"> -PHY_Config2 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006120</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY configuration register for data slice 2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#PHY_Config3"> -PHY_Config3 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006124</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY configuration register for data slice 3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_init_ratio0"> -phy_init_ratio0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800612C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY init ratio register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_init_ratio1"> -phy_init_ratio1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006130</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY init ratio register for data slice 1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_init_ratio2"> -phy_init_ratio2 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006134</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY init ratio register for data slice 2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_init_ratio3"> -phy_init_ratio3 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006138</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY init ratio register for data slice 3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_rd_dqs_cfg0"> -phy_rd_dqs_cfg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006140</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY read DQS configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_rd_dqs_cfg1"> -phy_rd_dqs_cfg1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006144</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY read DQS configuration register for data slice 1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_rd_dqs_cfg2"> -phy_rd_dqs_cfg2 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006148</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY read DQS configuration register for data slice 2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_rd_dqs_cfg3"> -phy_rd_dqs_cfg3 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800614C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY read DQS configuration register for data slice 3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_wr_dqs_cfg0"> -phy_wr_dqs_cfg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006154</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY write DQS configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_wr_dqs_cfg1"> -phy_wr_dqs_cfg1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006158</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY write DQS configuration register for data slice 1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_wr_dqs_cfg2"> -phy_wr_dqs_cfg2 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800615C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY write DQS configuration register for data slice 2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_wr_dqs_cfg3"> -phy_wr_dqs_cfg3 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006160</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY write DQS configuration register for data slice 3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_we_cfg0"> -phy_we_cfg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006168</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY FIFO write enable configuration for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_we_cfg1"> -phy_we_cfg1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800616C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY FIFO write enable configuration for data slice 1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_we_cfg2"> -phy_we_cfg2 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006170</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY FIFO write enable configuration for data slice 2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_we_cfg3"> -phy_we_cfg3 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006174</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY FIFO write enable configuration for data slice 3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#wr_data_slv0"> -wr_data_slv0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800617C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY write data slave ratio config for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#wr_data_slv1"> -wr_data_slv1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006180</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY write data slave ratio config for data slice 1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#wr_data_slv2"> -wr_data_slv2 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006184</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY write data slave ratio config for data slice 2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#wr_data_slv3"> -wr_data_slv3 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006188</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY write data slave ratio config for data slice 3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#reg_64"> -reg_64 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006190</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Training control 2</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#reg_65"> -reg_65 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006194</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Training control 3</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#page_mask"> -page_mask -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006204</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Page mask</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#axi_priority_wr_port0"> -axi_priority_wr_port0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006208</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXI Priority control for write port 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#axi_priority_wr_port1"> -axi_priority_wr_port1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800620C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXI Priority control for write port 1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#axi_priority_wr_port2"> -axi_priority_wr_port2 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006210</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXI Priority control for write port 2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#axi_priority_wr_port3"> -axi_priority_wr_port3 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006214</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXI Priority control for write port 3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#axi_priority_rd_port0"> -axi_priority_rd_port0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006218</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXI Priority control for read port 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#axi_priority_rd_port1"> -axi_priority_rd_port1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800621C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXI Priority control for read port 1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#axi_priority_rd_port2"> -axi_priority_rd_port2 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006220</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXI Priority control for read port 2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#axi_priority_rd_port3"> -axi_priority_rd_port3 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006224</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXI Priority control for read port 3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#lpddr_ctrl0"> -lpddr_ctrl0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80062A8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>LPDDR2 Control 0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#lpddr_ctrl1"> -lpddr_ctrl1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80062AC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>LPDDR2 Control 1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#lpddr_ctrl2"> -lpddr_ctrl2 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80062B0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>LPDDR2 Control 2</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#lpddr_ctrl3"> -lpddr_ctrl3 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80062B4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>LPDDR2 Control 3</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ddrc_ctrl"> -ddrc_ctrl -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRC Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ps7_ddr_init_data_2_0">ps7_ddr_init_data_2_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<H1>DDR INITIALIZATION</H1> -<H1>LOCK DDR</H1> -<H2><a name="ddrc_ctrl">Register (<A href=#mod___slcr> slcr </A>)ddrc_ctrl</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ddrc_ctrl</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_soft_rstb</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Active low soft reset. Update during normal operation. 0: Resets the controller 1: Takes the controller out of reset. Dynamic Bit Field. Note: Software changes DRAM controller register values only when the controller is in the reset state, except for bit fields that can be dymanically updated.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_powerdown_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controller power down control. Update during normal operation. Enable the controller to powerdown after it becomes idle. Dynamic Bit Field. 0: disable 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_data_bus_width</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR bus width control 00: 32-bit 01: 16-bit 1x: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_burst8_refresh</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Refresh timeout. Programmed value plus one will be the number of refresh timeouts that will be allowed to accumulate before traffic is blocked and the refreshes are forced to execute. Closing pages to perform a refresh is a one-time penalty that must be paid for each group of refreshes; therefore, performing refreshes in a burst reduces the per-refresh penalty of these page closings. Higher numbers for burst_of_N_refresh slightly increases utilization; lower numbers decreases the worst-case latency associated with refreshes. 0: single refresh 1: burst-of-2 ... 7: burst-of-8 refresh</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rdwr_idle_gap</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When the preferred transaction store is empty for this many clock cycles, switch to the alternate transaction store if it is non-empty. The read transaction store (both high and low priority) is the default preferred transaction store and the write transaction store is the alternate store. When 'Prefer write over read' is set this is reversed.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_rd_bypass</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present in designs supporting read bypass. For Debug only. 0: Do not disable bypass path for high priority read page hits. 1: disable bypass path for high priority read page hits.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_act_bypass</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present in designs supporting activate bypass. For Debug only. 0: Do not disable bypass path for high priority read activates. 1: disable bypass path for high priority read activates.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_auto_refresh</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable auto-refresh. 0: do not disable auto-refresh. 1: disable auto-refresh. Dynamic Bit Field. Note: When this transitions from 0 to 1, any pending refreshes will be immediately scheduled by the controller.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ddrc_ctrl@0XF8006000</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRC Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="Two_rank_cfg">Register (<A href=#mod___slcr> slcr </A>)Two_rank_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Two_rank_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_rfc_nom_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7f</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tREFI - Average time between refreshes. Unit: in multiples of 32 clocks. DRAM related. Default value is set for DDR3. Dynamic Bit Field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_active_ranks</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Rank configuration: 01: One Rank of DDR 11: Two Ranks of DDR Others: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_cs_bit0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present for multi-rank configurations. Selects the address bit used as rank address bit 0. Valid Range: 0 to 25, and 31 Internal Base: 9. The selected address bit is determined by adding the Internal Base to the value of this field. If set to 31, rank address bit 0 is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_wr_odt_block</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>180000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Block read/write scheduling cycle count when Write requires changing ODT settings 00: 1 cycle 01: 2 cycles 10: 3 cycles others: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_diff_rank_rd_2cycle_gap</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:21</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present for multi-rank configurations. The two cycle gap is required for mDDR only, due to the large variance in tDQSCK in mDDR. 0: schedule a 1-cycle gap in data responses when performing consecutive reads to different ranks 1: schedule 2 cycle gap for the same</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_cs_bit1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present for multi-rank configurations. Selects the address bit used as rank address bit 1. Valid Range: 0 to 25, and 31 Internal Base: 10 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 31, rank address bit 1 is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_open_bank</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present if MEMC_SIMPLE_ADDR_MAP is defined. Since MEMC_SIMPLE_ADDR_MAP is not defined, Reserved 1: Set the address map to Open Bank mode</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_4bank_ram</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>28:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present if MEMC_SIMPLE_ADDR_MAP is defined. Since MEMC_SIMPLE_ADDR_MAP is not defined, Reserved 1: Set the address map for 4 Bank RAMs</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>Two_rank_cfg@0XF8006004</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1fffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>8107f</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Two Rank Configuration</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="HPR_reg">Register (<A href=#mod___slcr> slcr </A>)HPR_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>HPR_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_hpr_min_non_critical_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of counts that the HPR queue is guaranteed to be non-critical (1 count = 32 DDR clocks).</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_hpr_max_starve_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of clocks that the HPR queue can be starved before it goes critical. Unit: 32 clocks</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_hpr_xact_run_length</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3c00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3c00000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of transactions that will be serviced once the HPR queue goes critical is the smaller of this number and the number of transactions available.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>HPR_reg@0XF8006008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3c0780f</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>HPR Queue control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="LPR_reg">Register (<A href=#mod___slcr> slcr </A>)LPR_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LPR_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800600C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_lpr_min_non_critical_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of clocks that the LPR queue is guaranteed to be non-critical. Unit: 32 clocks</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_lpr_max_starve_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of clocks that the LPR queue can be starved before it goes critical. Unit: 32 clocks</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_lpr_xact_run_length</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3c00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of transactions that will be serviced once the LPR queue goes critical is the smaller of this number and the number of transactions available</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>LPR_reg@0XF800600C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2001001</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>LPR Queue control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="WR_reg">Register (<A href=#mod___slcr> slcr </A>)WR_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>WR_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006010</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_w_min_non_critical_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of clock cycles that the WR queue is guaranteed to be non-critical.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_w_xact_run_length</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of transactions that will be serviced once the WR queue goes critical is the smaller of this number and the number of transactions available</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_w_max_starve_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of clocks that the Write queue can be starved before it goes critical. Unit: 32 clocks. FOR PERFORMANCE ONLY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>WR_reg@0XF8006010</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>14001</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>WR Queue control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_param_reg0">Register (<A href=#mod___slcr> slcr </A>)DRAM_param_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_param_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006014</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_rc</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1a</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1a</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tRC - Min time between activates to same bank (spec: 65 ns for DDR2-400 and smaller for faster parts). DRAM Related. Default value is set for DDR3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_rfc_min</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3fc0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>54</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1500</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tRFC(min) - Minimum time from refresh to refresh or activate (spec: 75nS to 195nS). DRAM Related. Default value is set for DDR3. Dynamic Bit Field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_post_selfref_gap_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1fc000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Minimum time to wait after coming out of self refresh before doing anything. This must be bigger than all the constraints that exist. (spec: Maximum of tXSNR and tXSRD and tXSDLL which is 512 clocks). Unit: in multiples of 32 clocks. DRAM Related</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_param_reg0@0XF8006014</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>4151a</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM Parameters 0</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_param_reg1">Register (<A href=#mod___slcr> slcr </A>)DRAM_param_reg1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_param_reg1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006018</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_wr2pre</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>12</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Minimum time between write and precharge to same bank DDR and DDR3: WL + BL/2 + tWR LPDDR2: WL + BL/2 + tWR + 1 Unit: Clocks where, WL: write latency. BL: burst length. This must match the value programmed in the BL bit of the mode register to the DRAM. BST is not supported at present. tWR: write recovery time. This comes directly from the DRAM specs.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_powerdown_to_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>After this many clocks of NOP or DESELECT the controller will put the DRAM into power down. This must be enabled in the Master Control Register. Unit: Multiples of 32 clocks.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_faw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fc00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>15</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5400</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tFAW - At most 4 banks must be activated in a rolling window of tFAW cycles. Unit: clocks. DRAM Related.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_ras_max</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>23</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>230000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tRAS(max) - Maximum time between activate and precharge to same bank. Maximum time that a page can be kept open (spec is 70 us). If this is zero. The page is closed after each transaction. Unit: Multiples of 1024 clocks DRAM related.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_ras_min</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>13</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4c00000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tRAS(min) - Minimum time between activate and precharge to the same bank (spec is 45 ns). Unit: clocks DRAM related. Default value is set for DDR3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_cke</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Minimum number of cycles of CKE HIGH/LOW during power down and self refresh. DDR2 and DDR3: Set this to tCKE value. LPDDR2: Set this to the larger of tCKE or tCKESR. Unit: clocks.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_param_reg1@0XF8006018</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f7ffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>44e354d2</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM Parameters 1</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_param_reg2">Register (<A href=#mod___slcr> slcr </A>)DRAM_param_reg2</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_param_reg2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800601C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_write_latency</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Time from write command to write data on DDRC to PHY Interface. (PHY adds an extra flop delay on the write data path; hence this value is one less than the write latency of the DRAM device itself). DDR2 and DDR3: WL -1 LPDDR2: WL Where WL: Write Latency of DRAM DRAM related.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rd2wr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Minimum time from read command to write command. Include time for bus turnaround and all per-bank, per-rank, and global constraints. DDR2 and DDR3: RL + BL/2 + 2 - WL LPDDR2: RL + BL/2 + RU (tDQSCKmax / tCK) + 1 - WL Write Pre-amble and DQ/DQS jitter timer is included in the above equation. DRAM RELATED.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_wr2rd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Minimum time from write command to read command. Includes time for bus turnaround and recovery times and all per-bank, per-rank, and global constraints. DDR2 and DDR3: WL + tWTR + BL/2 LPDDR2: WL + tWTR + BL/2 + 1 Unit: clocks. Where, WL: Write latency, BL: burst length. This should match the value. Programmed in the BL bit of the mode register to the DRAM. tWTR: internal WRITE to READ command delay. This comes directly from the DRAM specs.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_xp</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tXP: Minimum time after power down exit to any operation. DRAM related.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_pad_pd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>22:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>700000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If pads have a power-saving mode, this is the greater of the time for the pads to enter power down or the time for the pads to exit power down. Used only in non-DFI designs. Unit: clocks.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rd2pre</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:23</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f800000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Minimum time from read to precharge of same bank DDR2: AL + BL/2 + max(tRTP, 2) - 2 DDR3: AL + max (tRTP, 4) LPDDR2: BL/2 + tRTP - 1 AL: Additive Latency; BL: DRAM Burst Length; tRTP: value from spec. DRAM related.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_rcd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>70000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tRCD - AL Minimum time from activate to read or write command to same bank Min value for this is 1. AL = Additive Latency. DRAM Related.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_param_reg2@0XF800601C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>720238e5</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM Parameters 2</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_param_reg3">Register (<A href=#mod___slcr> slcr </A>)DRAM_param_reg3</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_param_reg3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006020</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_ccd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tCCD - Minimum time between two reads or two writes (from bank a to bank b) is this value + 1. DRAM related.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_rrd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tRRD - Minimum time between activates from bank A to bank B. (spec: 10ns or less) DRAM RELATED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_refresh_margin</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Issue critical refresh or page close this many cycles before the critical refresh or page timer expires. It is recommended that this not be changed from the default value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_rp</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tRP - Minimum time from precharge to activate of same bank. DRAM RELATED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_refresh_to_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If the refresh timer (tRFC_nom, as known as tREFI) has expired at least once, but it has not expired burst_of_N_refresh times yet, then a 'speculative refresh' may be performed. A speculative refresh is a refresh performed at a time when refresh would be useful, but before it is absolutely required. When the DRAM bus is idle for a period of time determined by this refresh idle timeout and the refresh timer has expired at least once since the last refresh, then a 'speculative refresh' will be performed. Speculative refreshes will continue successively until there are no refreshes pending or until new reads or writes are issued to the controller. Dynamic Bit Field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_sdram</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:21</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: sdram device 0: non-sdram device</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mobile</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>22:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: DDR2 or DDR3 device. 1: LPDDR2 device.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_clock_stop_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:23</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2 and DDR3: not used. LPDDR2: 0: stop_clk will never be asserted. 1: enable the assertion of stop_clk to the PHY whenever a clock is not required</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_read_latency</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>28:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Non-LPDDR2: not used. DDR2 and DDR3: Set to Read Latency, RL. Time from Read command to Read data on DRAM interface. It is used to calculate when DRAM clock may be stopped. Unit: DDR clock.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_mode_ddr1_ddr2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>29:29</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>unused</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_pad_pd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>30:30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: disable the pad power down feature 0: Enable the pad power down feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_loopback</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:31</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>unused</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_param_reg3@0XF8006020</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffffffc</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>272872d0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM Parameters 3</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_param_reg4">Register (<A href=#mod___slcr> slcr </A>)DRAM_param_reg4</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_param_reg4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006024</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_en_2t_timing_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: DDRC will use 2T timing 0: DDRC will use 1T timing</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_prefer_write</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: Bank selector prefers writes over reads</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_max_rank_rd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3c</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present for multi-rank configurations Background: Reads to the same rank can be performed back-to-back. Reads from different ranks require additional 1-cycle latency in between (to avoid possible data bus contention). The controller arbitrates for bus access on a cycle-by-cycle basis; therefore after a read is scheduled, there is a clock cycle in which only reads from the same bank are eligible to be scheduled. This prevents reads from other ranks from having fair access to the data bus. This parameter represents the maximum number of 64-byte reads (or 32B reads in some short read cases) that can be scheduled consecutively to the same rank. After this number is reached, a 1-cycle delay is inserted by the scheduler to allow all ranks a fair opportunity to be scheduled. Higher numbers increase bandwidth utilization, lower numbers increase fairness (and hence worst-case latency). FOR PERFORMANCE ONLY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mr_wr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>A low to high signal on this signal will do a mode register write or read. Controller will accept this command, if this signal is detected high and "ddrc_reg_mr_wr_busy" is detected low.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mr_addr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>180</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2 and DDR3: Mode register address. LPDDR2: not used. 00: MR0 01: MR1 10: MR2 11: MR3</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mr_data</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>24:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1fffe00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2 and DDR3: Mode register write data. LPDDR2: The 16 bits are interpreted for reads and writes: Reads: MR Addr[7:0], Don't Care[7:0]. Writes: MR Addf[7:0], MR Data[7:0].</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ddrc_reg_mr_wr_busy</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:25</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Core must initiate a MR write / read operation only if this signal is low. This signal goes high in the clock after the controller accepts the write / read request. It goes low when (i) MR write command has been issued to the DRAM (ii) MR Read data has been returned to Controller. Any MR write / read command that is received when 'ddrc_reg_mr_wr_busy' is high is not accepted. 0: Indicates that the core can initiate a mode register write / read operation. 1: Indicates that mode register write / read operation is in progress.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mr_type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:26</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Indicates whether the Mode register operation is read or write 0: write 1: read</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mr_rdata_valid</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This bit indicates whether the Mode Register Read Data present at address 0xA9 is valid or not. This bit is 0 by default. This bit will be cleared (0), whenever a Mode Register Read command is issued. This bit will be set to 1, when the Mode Register Read Data is written to register 0xA9.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_param_reg4@0XF8006024</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM Parameters 4</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_init_param">Register (<A href=#mod___slcr> slcr </A>)DRAM_init_param</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_init_param</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006028</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_final_wait_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Cycles to wait after completing the DRAM init sequence before starting the dynamic scheduler. Units are in counts of a global timer that pulses every 32 clock cycles. Default value is set for DDR3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_pre_ocd_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>780</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Wait period before driving the 'OCD Complete' command to DRAM. Units are in counts of a global timer that pulses every 32 clock cycles. There is no known spec requirement for this. It may be set to zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_mrd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tMRD - Cycles between Load Mode commands. DRAM related. Default value is set for DDR3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_init_param@0XF8006028</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2007</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM Initialization Parameters</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_EMR_reg">Register (<A href=#mod___slcr> slcr </A>)DRAM_EMR_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_EMR_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800602C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_emr2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2 and DDR3: Value written into the DRAM EMR2 register. LPDDR2: Value written into the DRAM MR3 register.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_emr3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2 and DDR3: Value written into the DRAM EMR3 register. LPDDR2: not used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_EMR_reg@0XF800602C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>8</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM EMR2, EMR3 access</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_EMR_MR_reg">Register (<A href=#mod___slcr> slcr </A>)DRAM_EMR_MR_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_EMR_MR_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006030</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>930</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>930</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2 and DDR3: Value written into the DRAM Mode register. Bit 8 is for DLL and the setting here is ignored. The controller sets appropriately. LPDDR2: Value written into the DRAM MR1 register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_emr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2 and DDR3: Value written into the DRAM EMR registers. Bits [9:7] are for OCD and the setting in this register is ignored. The controller sets those bits appropriately. LPDDR2: Value written into the DRAM MR2 register.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_EMR_MR_reg@0XF8006030</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>40930</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM EMR, MR access</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_burst8_rdwr">Register (<A href=#mod___slcr> slcr </A>)DRAM_burst8_rdwr</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_burst8_rdwr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006034</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_burst_rdwr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the burst size used to access the DRAM. This must match the BL mode register setting in the DRAM. 0010: Burst length of 4 0100: Burst length of 8 1000: Burst length of 16 (LPDDR2 with ___-bit data) All other values are reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_pre_cke_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>167</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1670</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clock cycles to wait after a DDR software reset before driving CKE high to start the DRAM initialization sequence. Units: 1024 clock cycles. DDR2 Specifications typically require this to be programmed for a delay of >= 200 uS. LPDDR2 - tINIT0 of 20 mS (max) + tINIT1 of 100 nS (min)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_post_cke_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clock cycles to wait after driving CKE high to start the DRAM initialization sequence. Units: 1024 clocks. DDR2 typically require a 400 ns delay, requiring this value to be programmed to 2 at all clock speeds. LPDDR2 - Typically require this to be programmed for a delay of 200 us.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_burstchop</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>28:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Feature not supported. When 1, Controller is out in burstchop mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_burst8_rdwr@0XF8006034</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>13ff3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>11674</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM Burst 8 read/write</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_disable_DQ">Register (<A href=#mod___slcr> slcr </A>)DRAM_disable_DQ</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_disable_DQ</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006038</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_force_low_pri_n</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Read Transaction Priority disable. 0: read transactions forced to low priority (turns off Bypass). 1: HPR reads allowed if enabled in the AXI priority read registers.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_dq</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When 1, DDRC will not de-queue any transactions from the CAM. Bypass will also be disabled. All transactions will be queued in the CAM. This is for debug only; no reads or writes are issued to DRAM as long as this is asserted. Dynamic Bit Field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_debug_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Not Applicable in this PHY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_level_start</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Not Applicable in this PHY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_level_start</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Not Applicable in this PHY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dq0_wait_t</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Not Applicable in this PHY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_disable_DQ@0XF8006038</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1fc3</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM Disable DQ</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_addr_map_bank">Register (<A href=#mod___slcr> slcr </A>)DRAM_addr_map_bank</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_addr_map_bank</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800603C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_bank_b0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the address bits used as bank address bit 0. Valid Range: 0 to 14. Internal Base: 5. The selected address bit for each of the bank address bits is determined by adding the Internal Base to the value of this field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_bank_b1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>70</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the address bits used as bank address bit 1. Valid Range: 0 to 14; Internal Base: 6. The selected address bit for each of the bank address bits is determined by adding the Internal Base to the value of this field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_bank_b2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>700</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the AXI address bit used as bank address bit 2. Valid range 0 to 14, and 15. Internal Base: 7. The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, bank address bit 2 is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bits used as column address bits 6. Half bus width mode: Selects the address bits used as column address bits 7. Valid range is 0-7. Internal Base 8. The selected address bit for each of the column address bits is determined by adding the Internal Base to the value of this field. Internal base: 9</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bits used as column address bits 7. Half bus width mode: Selects the address bits used as column address bits 8. Valid range is 0-7. Internal Base 9. The selected address bit for each of the column address bits is determined by adding the Internal Base to the value of this field. Internal base: 9</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_addr_map_bank@0XF800603C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>777</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Row/Column address bits</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_addr_map_col">Register (<A href=#mod___slcr> slcr </A>)DRAM_addr_map_col</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_addr_map_col</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006040</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bit used as column address bit 3. Half bus width mode: Selects the address bit used as column address bit 4. Valid Range: 0 to 7. Internal Base: 5 The selected address bit is determined by adding the Internal Base to the value of this field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bit used as column address bit 4. Half bus width mode: Selects the address bit used as column address bit 5. Valid Range: 0 to 7 Internal Base: 6 The selected address bit is determined by adding the Internal Base to the value of this field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bit used as column address bit 5. Half bus width mode: Selects the address bit used as column address bits 6. Valid Range: 0 to 7. Internal Base: 7. The selected address bit for each of the column address bits is determined by adding the Internal Base to the value of this field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bit used as column address bit 8. Half bus width mode: Selects the address bit used as column address bit 9. Valid Range: 0 to 7, and 15. Internal Base: 10. The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, this column address bit is set to 0. Note: Per JEDEC spec, column address bit 10 is reserved for indicating auto-precharge, and hence no source address bit can be mapped to column address bit 10.In LPDDR2, there is a dedicated bit for auto-precharge in the CA bus, and hence column bit 10 is used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b8</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bit used as column address bit 9. Half bus width mode: Selects the address bit used as column address bit 11. (Column address bit 10 in LPDDR2 mode) Valid Range: 0 to 7, and 15 Internal Base: 11 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, this column address bit is set to 0. Note: Per JEDEC spec, column address bit 10 is reserved for indicating auto-precharge, and hence no source address bit can be mapped to column address bit 10. In LPDDR2, there is a dedicated bit for auto-precharge in the CA bus, and hence column bit 10 is used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b9</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f00000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bit used as column address bit 11. (Column address bit 10 in LPDDR2 mode) Half bus width mode: Selects the address bit used as column address bit 12. (Column address bit 11 in LPDDR2 mode) Valid Range: 0 to 7, and 15 Internal Base: 12 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, this column address bit is set to 0. Note: Per JEDEC DDR2 spec, column address bit 10 is reserved for indicating auto-precharge, and hence no source address bit can be mapped to column address bit 10. In LPDDR2, there is a dedicated bit for auto-precharge in the CA bus, and hence column bit 10 is used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b10</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bit used as column address bit 12. (Column address bit 11 in LPDDR2 mode) Half bus width mode: Selects the address bit used as column address bit 13. (Column address bit 12 in LPDDR2 mode) Valid Range: 0 to 7, and 15. Internal Base: 13 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, this column address bit is set to 0. Note: Per JEDEC DDR2 spec, column address bit 10 is reserved for indicating auto-precharge, and hence no source address bit can be mapped to column address bit 10. In LPDDR2, there is a dedicated bit for auto-precharge in the CA bus, and hence column bit 10 is used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b11</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f0000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bit used as column address bit 13. (Column address bit 12 in LPDDR2 mode) Half bus width mode: Unused. To make it unused, this should be set to 15. (Column address bit 13 in LPDDR2 mode) Valid Range: 0 to 7, and 15. Internal Base: 14. The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, this column address bit is set to 0. Note: Per JEDEC DDR2 spec, column address bit 10 is reserved for indicating auto-precharge, and hence no source address bit can be mapped to column address bit 10. In LPDDR2, there is a dedicated bit for auto-precharge in the CA bus, and hence column bit 10 is used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_addr_map_col@0XF8006040</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>fff00000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Column address bits</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_addr_map_row">Register (<A href=#mod___slcr> slcr </A>)DRAM_addr_map_row</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_addr_map_row</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006044</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_row_b0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the AXI address bits used as row address bit 0. Valid Range: 0 to 11. Internal Base: 9 The selected address bit for each of the row address bits is determined by adding the Internal Base to the value of this field</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_row_b1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the AXI address bits used as row address bit 1. Valid Range: 0 to 11. Internal Base: 10 The selected address bit for each of the row address bits is determined by adding the Internal Base to the value of this field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_row_b2_11</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the AXI address bits used as row address bits 2 to 11. Valid Range: 0 to 11. Internal Base: 11 (for row address bit 2) to 20 (for row address bit 11) The selected address bit for each of the row address bits is determined by adding the Internal Base to the value of this field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_row_b12</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the AXI address bit used as row address bit 12. Valid Range: 0 to 11, and 15 Internal Base: 21 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, row address bit 12 is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_row_b13</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the AXI address bit used as row address bit 13. Valid Range: 0 to 11, and 15 Internal Base: 22 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, row address bit 13 is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_row_b14</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f00000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects theAXI address bit used as row address bit 14. Valid Range: 0 to 11, and 15 Internal Base: 23 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, row address bit 14 is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_row_b15</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the AXI address bit used as row address bit 15. Valid Range: 0 to 11, and 15 Internal Base: 24 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, row address bit 15 is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_addr_map_row@0XF8006044</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ff66666</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Select DRAM row address bits</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_ODT_reg">Register (<A href=#mod___slcr> slcr </A>)DRAM_ODT_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_ODT_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006048</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rank0_rd_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Unused. [1:0] - Indicates which remote ODTs must be turned ON during a read to rank 0. Each of the 2 ranks has a remote ODT (in the DRAM) which can be turned on by setting the appropriate bit here. Rank 0 is controlled by the LSB; Rank 1 is controlled by bit next to the LSB. For each rank, set its bit to 1 to enable its ODT. [2]: If 1 then local ODT is enabled during reads to rank 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rank0_wr_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>38</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>[1:0] - Indicates which remote ODT's must be turned on during a write to rank 0. Each of the 2 ranks has a remote ODT (in the DRAM) which can be turned on by setting the appropriate bit here. Rank 0 is controlled by the LSB; Rank 1 is controlled by bit next to the LSB. For each rank, set its bit to 1 to enable its ODT. [2]: If 1 then local ODT is enabled during writes to rank 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rank1_rd_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1c0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Unused</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rank1_wr_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Unused</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_local_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Value to drive on the 2-bit local_odt PHY outputs when output enable is not asserted and a read is in progress (where 'in progress' is defined as after a read command is issued and until all read data has been returned all the way to the controller.) Typically this is set to the value required to enable termination at the desired strength for read usage.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_local_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Value to drive on the 2-bit local_odt PHY outputs when write levelling is enabled for DQS.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_idle_local_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>30000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>30000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Value to drive on the 2-bit local_odt PHY outputs when output enable is not asserted and a read is not in progress. Typically this is the value required to disable termination to save power when idle.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rank2_rd_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1c0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Unused</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rank2_wr_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:21</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Unused</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rank3_rd_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Unused</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rank3_wr_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>29:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>38000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Unused</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_ODT_reg@0XF8006048</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3c248</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM ODT control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_cmd_timeout_rddata_cpt">Register (<A href=#mod___slcr> slcr </A>)phy_cmd_timeout_rddata_cpt</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_cmd_timeout_rddata_cpt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006050</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_cmd_to_data</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Not used in DFI PHY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_cmd_to_data</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Not used in DFI PHY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rdc_we_to_re_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This register value + 1 give the number of clock cycles between writing into the Read Capture FIFO and the read operation. The setting of this register determines the read data timing and depends upon total delay in the system for read operation which include fly-by delays, trace delay, clkout_invert etc. This is used only if reg_phy_use_fixed_re=1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rdc_fifo_rst_disable</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When 1, disable counting the number of times the Read Data Capture FIFO has been reset when the FIFO was not empty.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_use_fixed_re</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When 1: PHY generates FIFO read enable after fixed number of clock cycles as defined by reg_phy_rdc_we_to_re_delay[3:0]. When 0: PHY uses the not_empty method to do the read enable generation. Note: This port must be set HIGH during training/leveling process i.e. when ddrc_dfi_wrlvl_en/ ddrc_dfi_rdlvl_en/ ddrc_dfi_rdlvl_gate_en port is set HIGH.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rdc_fifo_rst_err_cnt_clr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clear/reset for counter rdc_fifo_rst_err_cnt[3:0]. 0: no clear, 1: clear. Note: This is a synchronous dynamic signal that must have timing closed.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dis_phy_ctrl_rstn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the reset from Phy Ctrl macro. 1: PHY Ctrl macro reset port is always HIGH 0: PHY Ctrl macro gets power on reset.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_clk_stall_level</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: stall clock, for DLL aging control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_num_of_dq0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This register value determines register determines the number of samples used for each ratio increment during Gate Training. Num_of_iteration = reg_phy_gatelvl_num_of_dq0 + 1 The recommended value for this register is 8. Accuracy is better with higher value, but this will cause leveling to run longer.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_num_of_dq0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>70000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This register value determines register determines the number of samples used for each ratio increment during Write Leveling. Num_of_iteration = reg_phy_wrlvl_num_of_dq0 + 1 The recommended value for this register is 8. Accuracy is better with higher value, but this will cause leveling to run longer.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_cmd_timeout_rddata_cpt@0XF8006050</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ff0f8fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>77010800</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY command time out and read data capture FIFO</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DLL_calib">Register (<A href=#mod___slcr> slcr </A>)DLL_calib</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DLL_calib</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006058</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dll_calib_to_min_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Unused in DFI Controller.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dll_calib_to_max_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Unused in DFI Controller.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_dll_calib</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When 1, disable dll_calib generated by the controller. The core should issue the dll_calib signal using co_gs_dll_calib input. This input is changeable on the fly. When 0, controller will issue dll_calib periodically</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DLL_calib@0XF8006058</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>101</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DLL calibration</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ODT_delay_hold">Register (<A href=#mod___slcr> slcr </A>)ODT_delay_hold</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ODT_delay_hold</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800605C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rd_odt_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UNUSED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_wr_odt_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The delay, in clock cycles, from issuing a write command to setting ODT values associated with that command. ODT setting should remain constant for the entire time that DQS is driven by the controller. The suggested value for DDR2 is WL - 5 and for DDR3 is 0. WL is Write latency. DDR2 ODT has a 2-cycle on-time delay and a 2.5-cycle off-time delay. ODT is not applicable to LPDDR2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rd_odt_hold</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Unused</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_wr_odt_hold</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Cycles to hold ODT for a Write Command. When 0x0, ODT signal is ON for 1 cycle. When 0x1, it is ON for 2 cycles, etc. The values to program in different modes are : DRAM Burst of 4 -2, DRAM Burst of 8 -4</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ODT_delay_hold@0XF800605C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>5003</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ODT delay and ODT hold</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ctrl_reg1">Register (<A href=#mod___slcr> slcr </A>)ctrl_reg1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ctrl_reg1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006060</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_pageclose</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If true, bank will be closed and kept closed if no transactions are available for it. If false, bank will remain open until there is a need to close it (to open a different page, or for page timeout or refresh timeout.) This does not apply when auto-refresh is used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_lpr_num_entries</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7e</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3e</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of entries in the low priority transaction store is this value plus 1. In this design, by default all read ports are treated as low priority and hence the value of 0x1F. The hpr_num_entries is 32 minus this value. Bit [6] is ignored.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_auto_pre_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When set, most reads and writes will be issued with auto-precharge. (Exceptions can be made for collision cases.)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_refresh_update_level</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Toggle this signal to indicate that refresh register(s) have been updated. The value will be automatically updated when exiting soft reset. So it does not need to be toggled initially. Dynamic Bit Field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_wc</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable Write Combine: 0: enable 1: disable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_collision_page_opt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When this is set to 0, auto-precharge will be disabled for the flushed command in a collision case. Collision cases are write followed by read to same address, read followed by write to same address, or write followed by write to same address with DIS_WC bit = 1 (where 'same address' comparisons exclude the two address bits representing critical word).</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_selfref_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If 1, then the controller will put the DRAM into self refresh when the transaction store is empty. Dynamic Bit Field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ctrl_reg1@0XF8006060</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>17ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3e</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Controller 1</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ctrl_reg2">Register (<A href=#mod___slcr> slcr </A>)ctrl_reg2</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ctrl_reg2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006064</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_go2critical_hysteresis</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1fe0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Describes the number of cycles that co_gs_go2critical_rd or co_gs_go2critical_wr must be asserted before the corresponding queue moves to the 'critical' state in the DDRC. The arbiter controls the co_gs_go2critical_* signals; it is designed for use with this hysteresis field set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_go2critical_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Keep reg_ddrc_go2critical_wr and reg_ddrc_go2critical_rd signals going to DDRC at 0. 1: Set reg_ddrc_go2critical_wr and reg_ddrc_go2critical_rd signals going to DDRC based on Urgent input coming from AXI master.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ctrl_reg2@0XF8006064</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>21fe0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>20000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Controller 2</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ctrl_reg3">Register (<A href=#mod___slcr> slcr </A>)ctrl_reg3</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ctrl_reg3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006068</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_wrlvl_ww</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>41</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>41</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2: not applicable. LPDDR2 and DDR3: Write leveling write-to-write delay. Specifies the minimum number of clock cycles from the assertion of a ddrc_dfi_wrlvl_strobe signal to the next ddrc_dfi_wrlvl_strobe signal. Only applicable when connecting to PHYs operating in PHY RdLvl Evaluation mode. Recommended value is: (RL + reg_phy_rdc_we_to_re_delay + 50)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rdlvl_rr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>41</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2 and LPDDR2: not applicable. DDR3: Read leveling read-to-read delay. Specifies the minimum number of clock cycles from the assertion of a read command to the next read command. Only applicable when connecting to PHYs operating in PHY RdLvl Evaluation mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_t_wlmrd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>28</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>280000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2 and LPDDR2: not applicable. DDR3: First DQS/DQS# rising edge after write leveling mode is programmed. This is same as the tMLRD value from the DRAM spec.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ctrl_reg3@0XF8006068</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>284141</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Controller 3</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ctrl_reg4">Register (<A href=#mod___slcr> slcr </A>)ctrl_reg4</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ctrl_reg4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800606C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>dfi_t_ctrlupd_interval_min_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This is the minimum amount of time between Controller initiated DFI update requests (which will be executed whenever the controller is idle). Set this number higher to reduce the frequency of update requests, which can have a small impact on the latency of the first read request when the controller is idle. Units: 1024 clocks</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>dfi_t_ctrlupd_interval_max_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>16</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This is the maximum amount of time between Controller initiated DFI update requests. This timer resets with each update request; when the timer expires, traffic is blocked for a few cycles. PHY can use this idle time to recalibrate the delay lines to the DLLs. The DLL calibration is also used to reset PHY FIFO pointers in case of data capture errors. Updates are required to maintain calibration over PVT, but frequent updates may impact performance. Units: 1024 clocks</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ctrl_reg4@0XF800606C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1610</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Controller 4</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ctrl_reg5">Register (<A href=#mod___slcr> slcr </A>)ctrl_reg5</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ctrl_reg5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006078</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_t_ctrl_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies the number of DFI clock cycles after an assertion or deassertion of the DFI control signals that the control signals at the PHY-DRAM interface reflect the assertion or de-assertion. If the DFI clock and the memory clock are not phase-aligned, this timing parameter should be rounded up to the next integer value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_t_dram_clk_disable</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies the number of DFI clock cycles from the assertion of the ddrc_dfi_dram_clk_disable signal on the DFI until the clock to the DRAM memory devices, at the PHY-DRAM boundary, maintains a low value. If the DFI clock and the memory clock are not phase aligned, this timing parameter should be rounded up to the next integer value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_t_dram_clk_enable</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies the number of DFI clock cycles from the de-assertion of the ddrc_dfi_dram_clk_disable signal on the DFI until the first valid rising edge of the clock to the DRAM memory devices at the PHY-DRAM boundary. If the DFI clock and the memory clock are not phase aligned, this timing parameter should be rounded up to the next integer value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_cksre</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This is the time after Self Refresh Entry that CK is maintained as a valid clock. Specifies the clock disable delay after SRE. Recommended settings: LPDDR2: 2 DDR2: 1 DDR3: tCKSRE</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_cksrx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This is the time before Self Refresh Exit that CK is maintained as a valid clock before issuing SRX. Specifies the clock stable time before SRX. Recommended settings: LPDDR2: 2 DDR2: 1 DDR3: tCKSRX</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_ckesr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>400000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Minimum CKE low width for Self Refresh entry to exit Timing in memory clock cycles. Recommended settings: LPDDR2: tCKESR DDR2: tCKE DDR3: tCKE+1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ctrl_reg5@0XF8006078</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>466111</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Controller register 5</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ctrl_reg6">Register (<A href=#mod___slcr> slcr </A>)ctrl_reg6</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ctrl_reg6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800607C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_ckpde</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This is the time after Power Down Entry that CK is maintained as a valid clock. Specifies the clock disable delay after PDE. Recommended setting for LPDDR2: 2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_ckpdx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This is the time before Power Down Exit that CK is maintained as a valid clock before issuing PDX. Specifies the clock stable time before PDX. Recommended setting for LPDDR2: 2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_ckdpde</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This is the time after Deep Power Down Entry that CK is maintained as a valid clock. Specifies the clock disable delay after DPDE. Recommended setting for LPDDR2: 2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_ckdpdx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This is the time before Deep Power Down Exit that CK is maintained as a valid clock before issuing DPDX. Specifies the clock stable time before DPDX. Recommended setting for LPDDR2: 2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_ckcsx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>30000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This is the time before Clock Stop Exit that CK is maintained as a valid clock before issuing DPDX. Specifies the clock stable time before next command after Clock Stop Exit. Recommended setting for LPDDR2: tXP + 2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ctrl_reg6@0XF800607C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>32222</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Controller register 6</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="CHE_REFRESH_TIMER01">Register (<A href=#mod___slcr> slcr </A>)CHE_REFRESH_TIMER01</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHE_REFRESH_TIMER01</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060A0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>refresh_timer0_start_value_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Refresh Timer for Rank 1. Unit: in multiples of 32 clocks. (Only present in multi-rank configurations). FOR PERFORMANCE ONLY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>refresh_timer1_start_value_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Refresh Timer for Rank 0. (Only present in multi-rank configurations). Unit: in multiples of 32 clocks. FOR PERFORMANCE ONLY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CHE_REFRESH_TIMER01@0XF80060A0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>8000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>CHE_REFRESH_TIMER01</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="CHE_T_ZQ">Register (<A href=#mod___slcr> slcr </A>)CHE_T_ZQ</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHE_T_ZQ</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060A4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_auto_zq</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1=disable controller generation of ZQCS command. Co_gs_zq_calib_short can be used instead to control ZQ calibration commands. 0=internally generate ZQCS commands based on reg_ddrc_t_zq_short_interval_x1024 This is only present for implementations supporting DDR3 and LPDDR2 devices.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_ddr3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Indicates operating in DDR2/DDR3 mode. Default value is set for DDR3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_mod</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffc</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Mode register set command update delay (minimum the larger of 12 clock cycles or 15ns)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_zq_long_nop</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2: not applicable. LPDDR2 and DDR3: Number of cycles of NOP required after a ZQCL (ZQ calibration long) command is issued to DRAM. Units: Clock cycles.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_zq_short_nop</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffc00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2: not applicable. LPDDR2 and DDR3: Number of cycles of NOP required after a ZQCS (ZQ calibration short) command is issued to DRAM. Units: Clock cycles.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CHE_T_ZQ@0XF80060A4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>10200802</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ZQ parameters</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="CHE_T_ZQ_Short_Interval_Reg">Register (<A href=#mod___slcr> slcr </A>)CHE_T_ZQ_Short_Interval_Reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHE_T_ZQ_Short_Interval_Reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060A8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>t_zq_short_interval_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c845</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c845</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2: not used. LPDDR2 and DDR3: Average interval to wait between automatically issuing ZQCS (ZQ calibration short) commands to DDR3 devices. Meaningless if reg_ddrc_dis_auto_zq=1. Units: 1024 Clock cycles.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>dram_rstn_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>67</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6700000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of cycles to assert DRAM reset signal during init sequence. Units: 1024 Clock cycles. Applicable for DDR3 only.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CHE_T_ZQ_Short_Interval_Reg@0XF80060A8</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>670c845</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Misc parameters</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="deep_pwrdwn_reg">Register (<A href=#mod___slcr> slcr </A>)deep_pwrdwn_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>deep_pwrdwn_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060AC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>deeppowerdown_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2 and DDR3: not used. LPDDR2: 0: Brings Controller out of Deep Powerdown mode. 1: Puts DRAM into Deep Powerdown mode when the transaction store is empty. For performance only. Dynamic Bit Field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>deeppowerdown_to_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1fe</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1fe</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2 and DDR3: not sued. LPDDR2: Minimum deep power down time. DDR exits from deep power down mode immediately after reg_ddrc_deeppowerdown_en is deasserted. Value from the spec is 500us. Units are in 1024 clock cycles. For performance only.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>deep_pwrdwn_reg@0XF80060AC</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1fe</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Deep powerdown (LPDDR2)</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="reg_2c">Register (<A href=#mod___slcr> slcr </A>)reg_2c</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_2c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060B0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>dfi_wrlvl_max_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>fff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write leveling maximum time. Specifies the maximum number of clock cycles that the controller will wait for a response (phy_dfi_wrlvl_resp) to a write leveling enable signal (ddrc_dfi_wrlvl_en). Only applicable when connecting to PHY's operating in 'PHY WrLvl Evaluation' mode. Typical value 0xFFF Units 1024 clocks</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>dfi_rdlvl_max_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>fff000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Read leveling maximum time. Specifies the maximum number of clock cycles that the controller will wait for a response (phy_dfi_rdlvl_resp) to a read leveling enable signal (ddrc_dfi_rdlvl_en or ddrc_dfi_rdlvl_gate_en). Only applicable when connecting to PHY's operating in 'PHY RdLvl Evaluation' mode. Typical value 0xFFF Units 1024 clocks</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ddrc_reg_twrlvl_max_error</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>24:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When '1' indicates that the reg_ddrc_dfi_wrlvl_max_x1024 timer has timed out. This is a Clear-on-Write register. If write leveling timed out, an error is indicated by the DDRC and this bit gets set. The value is held until it is cleared. Clearing is done by writing a '0' to this register. Only present in designs that support DDR3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ddrc_reg_trdlvl_max_error</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:25</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2: not applicable. LPDDR2 and DDR3: When '1' indicates that the reg_ddrc_dfi_rdrlvl_max_x1024 timer has timed out. This is a Clear-on-Write register. If read leveling or gate training timed out, an error is indicated by the DDRC and this bit gets set. The value is held at that value until it is cleared. Clearing is done by writing a '0' to this register.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_wr_level_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:26</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Write leveling disabled. 1: Write leveling mode has been enabled as part of init sequence; Valid only for DDR3 DFI designs</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_rd_dqs_gate_level</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Read DQS gate leveling is disabled. 1: Read DQS Gate Leveling mode has been enabled as part of init sequence; Valid only for DDR3 DFI designs</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_rd_data_eye_train</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>28:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR2: not applicable. LPDDR2 and DDR3: 0: 1: Read Data Eye training mode has been enabled as part of init sequence.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>reg_2c@0XF80060B0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1fffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1cffffff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Training control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="reg_2d">Register (<A href=#mod___slcr> slcr </A>)reg_2d</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_2d</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060B4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_2t_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the clock edge in which chip select (CSN) and CKE is asserted. Unsupported feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_skip_ocd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This register must be kept at 1'b1. 1'b0 is NOT supported. 1: Indicates the controller to skip OCD adjustment step during DDR2 initialization. OCD_Default and OCD_Exit are performed instead. 0: Not supported.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_pre_bypass</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present in designs supporting precharge bypass. When 1, disable bypass path for high priority precharges FOR DEBUG ONLY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>reg_2d@0XF80060B4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Misc Debug</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="dfi_timing">Register (<A href=#mod___slcr> slcr </A>)dfi_timing</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>dfi_timing</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060B8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_t_rddata_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Time from the assertion of a READ command on the DFI interface to the assertion of the phy_dfi_rddata_en signal. DDR2 and DDR3: RL - 1 LPDDR: RL Where RL is read latency of DRAM.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_t_ctrlup_min</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7fe0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies the minimum number of clock cycles that the ddrc_dfi_ctrlupd_req signal must be asserted.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_t_ctrlup_max</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>24:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1ff8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies the maximum number of clock cycles that the ddrc_dfi_ctrlupd_req signal can assert.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>dfi_timing@0XF80060B8</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1ffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>200066</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DFI timing</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="CHE_ECC_CONTROL_REG_OFFSET">Register (<A href=#mod___slcr> slcr </A>)CHE_ECC_CONTROL_REG_OFFSET</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHE_ECC_CONTROL_REG_OFFSET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060C4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Clear_Uncorrectable_DRAM_ECC_error</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Writing 1 to this bit will clear the uncorrectable log valid bit and the uncorrectable error counters.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Clear_Correctable_DRAM_ECC_error</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Writing 1 to this bit will clear the correctable log valid bit and the correctable error counters.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CHE_ECC_CONTROL_REG_OFFSET@0XF80060C4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ECC error clear</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="CHE_CORR_ECC_LOG_REG_OFFSET">Register (<A href=#mod___slcr> slcr </A>)CHE_CORR_ECC_LOG_REG_OFFSET</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHE_CORR_ECC_LOG_REG_OFFSET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060C8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CORR_ECC_LOG_VALID</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Set to 1 when a correctable ECC error is captured. As long as this is 1 no further ECC errors will be captured. This is cleared when a 1 is written to register bit[1] of ECC CONTROL REGISTER (0x31)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ECC_CORRECTED_BIT_NUM</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fe</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Indicator of the bit number syndrome in error for single-bit errors. The field is 7-bit wide to handle 72-bits of data. This is an encoded value with ECC bits placed in between data. The encoding is given in section 5.4 Correctable bit number from the lowest error lane is reported here. There are only 13-valid bits going to an ECC lane (8-data + 5-ECC). Only 4-bits are needed to encode a max value of d'13. Bit[7] of this register is used to indicate the exact byte lane. When a error happens, if CORR_ECC_LOG_COL[0] from register 0x33 is 1'b0, then the error happened in Lane 0 or 1. If CORR_ECC_LOG_COL[0] is 1'b1, then the error happened in Lane 2 or 3. Bit[7] of this register indicates whether the error is from upper or lower byte lane. If it is 0, then it is lower byte lane and if it is 1, then it is upper byte lane. Together with CORR_ECC_LOG_COL[0] and bit[7] of this register, the exact byte lane with correctable error can be determined.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CHE_CORR_ECC_LOG_REG_OFFSET@0XF80060C8</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ECC error correction</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="CHE_UNCORR_ECC_LOG_REG_OFFSET">Register (<A href=#mod___slcr> slcr </A>)CHE_UNCORR_ECC_LOG_REG_OFFSET</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHE_UNCORR_ECC_LOG_REG_OFFSET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060DC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UNCORR_ECC_LOG_VALID</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Set to 1 when an uncorrectable ECC error is captured. As long as this is a 1, no further ECC errors will be captured. This is cleared when a 1 is written to register bit[0] of ECC CONTROL REGISTER (0x31).</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CHE_UNCORR_ECC_LOG_REG_OFFSET@0XF80060DC</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ECC unrecoverable error status</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="CHE_ECC_STATS_REG_OFFSET">Register (<A href=#mod___slcr> slcr </A>)CHE_ECC_STATS_REG_OFFSET</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHE_ECC_STATS_REG_OFFSET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060F0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>STAT_NUM_CORR_ERR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Returns the number of correctable ECC errors seen since the last read. Counter saturates at max value. This is cleared when a 1 is written to register bit[1] of ECC CONTROL REGISTER (0x58).</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>STAT_NUM_UNCORR_ERR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Returns the number of un-correctable errors since the last read. Counter saturates at max value. This is cleared when a 1 is written to register bit[0] of ECC CONTROL REGISTER (0x58).</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CHE_ECC_STATS_REG_OFFSET@0XF80060F0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ECC error count</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ECC_scrub">Register (<A href=#mod___slcr> slcr </A>)ECC_scrub</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ECC_scrub</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060F4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_ecc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM ECC Mode. The only valid values that works for this project are 000 (No ECC) and 100 (SEC/DED over 1-beat). To run the design in ECC mode, set reg_ddrc_data_bus_width to 2'b01 (Half bus width) and reg_ddrc_ecc_mode to 100. In this mode, there will be 16-data bits + 6-bit ECC on the DRAM bus. Controller must NOT be put in full bus width mode, when ECC is turned ON. 000 : No ECC, 001: Reserved 010: Parity 011: Reserved 100: SEC/DED over 1-beat 101: SEC/DED over multiple beats 110: Device Correction 111: Reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_scrub</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Enable ECC scrubs (valid only when reg_ddrc_ecc_mode = 100). 1: Disable ECC scrubs</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ECC_scrub@0XF80060F4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>8</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ECC mode/scrub</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_rcvr_enable">Register (<A href=#mod___slcr> slcr </A>)phy_rcvr_enable</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_rcvr_enable</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006114</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dif_on</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Value to drive to IO receiver enable pins when turning it ON. When NOT in powerdown or self-refresh (when CKE=1) this value will be sent to the IOs to control receiver on/off. IOD is the size specified by the IO_DIFEN_SIZE parameter.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dif_off</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Value to drive to IO receiver enable pins when turning it OFF. When in powerdown or self-refresh (CKE=0) this value will be sent to the IOs to control receiver on/off. IOD is the size specified by the IO_DIFEN_SIZE parameter. Depending on the IO, one of these signals dif_on or dif_off can be used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_rcvr_enable@0XF8006114</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Phy receiver enable register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="PHY_Config0">Register (<A href=#mod___slcr> slcr </A>)PHY_Config0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PHY_Config0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006118</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_data_slice_in_use</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Data bus width selection for Read FIFO RE generation. One bit for each data slice. 0: read data responses are ignored. 1: data slice is valid. Note: The Phy Data Slice 0 must always be enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rdlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_board_lpbk_tx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>External Board Loopback testing. 0: disable 1: This Slice behaves as Transmitter for board loopback. This port must be set '0' always except when in external board level loopback test mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_board_lpbk_rx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>External Board Loopback testing. 0: disable 1: This Slice behaves as Receiver for board loopback. This port must be set '0' always except when in external board level loopback test mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_shift_dq</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7fc0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Determines whether early shifting is required for a particular DQ bit when reg_phy_bist_mode is 10. 0: PRBS pattern without any shift. 1: PRBS pattern shifted early by 1 bit.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_err_clr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clear the mismatch error flag from the BIST Checker. 0: No effect 1: sticky error flag is cleared</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dq_offset</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>30:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Offset value from DQS to DQ. Default value: 0x40 (for 90 degree shift). This is only used when reg_phy_use_wr_level=1. #Note 1: When a port width (W) is multiple of N instances of Ranks or Slices, each instance will get W/N bits. Instance n will get (n+1)*(W/N) -1: n (W/N) bits where n (0, 1, to N-1) is the instance number of Rank or Slice.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>PHY_Config0@0XF8006118</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7fffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>40000001</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="PHY_Config1">Register (<A href=#mod___slcr> slcr </A>)PHY_Config1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PHY_Config1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800611C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_data_slice_in_use</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Data bus width selection for Read FIFO RE generation. One bit for each data slice. 0: read data responses are ignored. 1: data slice is valid. Note: The Phy Data Slice 0 must always be enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rdlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_board_lpbk_tx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>External Board Loopback testing. 0: disable 1: This Slice behaves as Transmitter for board loopback. This port must be set '0' always except when in external board level loopback test mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_board_lpbk_rx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>External Board Loopback testing. 0: disable 1: This Slice behaves as Receiver for board loopback. This port must be set '0' always except when in external board level loopback test mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_shift_dq</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7fc0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Determines whether early shifting is required for a particular DQ bit when reg_phy_bist_mode is 10. 0: PRBS pattern without any shift. 1: PRBS pattern shifted early by 1 bit.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_err_clr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clear the mismatch error flag from the BIST Checker. 0: No effect 1: sticky error flag is cleared</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dq_offset</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>30:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Offset value from DQS to DQ. Default value: 0x40 (for 90 degree shift). This is only used when reg_phy_use_wr_level=1. #Note 1: When a port width (W) is multiple of N instances of Ranks or Slices, each instance will get W/N bits. Instance n will get (n+1)*(W/N) -1: n (W/N) bits where n (0, 1, to N-1) is the instance number of Rank or Slice.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>PHY_Config1@0XF800611C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7fffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>40000001</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY configuration register for data slice 1.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="PHY_Config2">Register (<A href=#mod___slcr> slcr </A>)PHY_Config2</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PHY_Config2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006120</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_data_slice_in_use</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Data bus width selection for Read FIFO RE generation. One bit for each data slice. 0: read data responses are ignored. 1: data slice is valid. Note: The Phy Data Slice 0 must always be enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rdlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_board_lpbk_tx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>External Board Loopback testing. 0: disable 1: This Slice behaves as Transmitter for board loopback. This port must be set '0' always except when in external board level loopback test mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_board_lpbk_rx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>External Board Loopback testing. 0: disable 1: This Slice behaves as Receiver for board loopback. This port must be set '0' always except when in external board level loopback test mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_shift_dq</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7fc0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Determines whether early shifting is required for a particular DQ bit when reg_phy_bist_mode is 10. 0: PRBS pattern without any shift. 1: PRBS pattern shifted early by 1 bit.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_err_clr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clear the mismatch error flag from the BIST Checker. 0: No effect 1: sticky error flag is cleared</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dq_offset</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>30:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Offset value from DQS to DQ. Default value: 0x40 (for 90 degree shift). This is only used when reg_phy_use_wr_level=1. #Note 1: When a port width (W) is multiple of N instances of Ranks or Slices, each instance will get W/N bits. Instance n will get (n+1)*(W/N) -1: n (W/N) bits where n (0, 1, to N-1) is the instance number of Rank or Slice.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_data_slice_in_use</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Data bus width selection for Read FIFO RE generation. One bit for each data slice. 0: read data responses are ignored. 1: data slice is valid. Note: The Phy Data Slice 0 must always be enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rdlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_board_lpbk_tx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>External Board Loopback testing. 0: disable 1: This Slice behaves as Transmitter for board loopback. This port must be set '0' always except when in external board level loopback test mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_board_lpbk_rx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>External Board Loopback testing. 0: disable 1: This Slice behaves as Receiver for board loopback. This port must be set '0' always except when in external board level loopback test mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_shift_dq</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7fc0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Determines whether early shifting is required for a particular DQ bit when reg_phy_bist_mode is 10. 0: PRBS pattern without any shift. 1: PRBS pattern shifted early by 1 bit.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_err_clr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clear the mismatch error flag from the BIST Checker. 0: No effect 1: sticky error flag is cleared</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dq_offset</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>30:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Offset value from DQS to DQ. Default value: 0x40 (for 90 degree shift). This is only used when reg_phy_use_wr_level=1. #Note 1: When a port width (W) is multiple of N instances of Ranks or Slices, each instance will get W/N bits. Instance n will get (n+1)*(W/N) -1: n (W/N) bits where n (0, 1, to N-1) is the instance number of Rank or Slice.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>PHY_Config2@0XF8006120</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7fffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>40000001</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY configuration register for data slice 2.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="PHY_Config3">Register (<A href=#mod___slcr> slcr </A>)PHY_Config3</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PHY_Config3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006124</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_data_slice_in_use</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Data bus width selection for Read FIFO RE generation. One bit for each data slice. 0: read data responses are ignored. 1: data slice is valid. Note: The Phy Data Slice 0 must always be enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rdlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_board_lpbk_tx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>External Board Loopback testing. 0: disable 1: This Slice behaves as Transmitter for board loopback. This port must be set '0' always except when in external board level loopback test mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_board_lpbk_rx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>External Board Loopback testing. 0: disable 1: This Slice behaves as Receiver for board loopback. This port must be set '0' always except when in external board level loopback test mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_shift_dq</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7fc0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Determines whether early shifting is required for a particular DQ bit when reg_phy_bist_mode is 10. 0: PRBS pattern without any shift. 1: PRBS pattern shifted early by 1 bit.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_err_clr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clear the mismatch error flag from the BIST Checker. 0: No effect 1: sticky error flag is cleared</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dq_offset</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>30:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Offset value from DQS to DQ. Default value: 0x40 (for 90 degree shift). This is only used when reg_phy_use_wr_level=1. #Note 1: When a port width (W) is multiple of N instances of Ranks or Slices, each instance will get W/N bits. Instance n will get (n+1)*(W/N) -1: n (W/N) bits where n (0, 1, to N-1) is the instance number of Rank or Slice.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>PHY_Config3@0XF8006124</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7fffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>40000001</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY configuration register for data slice 3.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_init_ratio0">Register (<A href=#mod___slcr> slcr </A>)phy_init_ratio0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_init_ratio0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800612C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The user programmable init ratio used by Write Leveling FSM</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffc00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23c00</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The user programmable init ratio used Gate Leveling FSM</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_init_ratio0@0XF800612C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>23c00</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY init ratio register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_init_ratio1">Register (<A href=#mod___slcr> slcr </A>)phy_init_ratio1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_init_ratio1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006130</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The user programmable init ratio used by Write Leveling FSM</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffc00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8a</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>22800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The user programmable init ratio used Gate Leveling FSM</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_init_ratio1@0XF8006130</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>22800</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY init ratio register for data slice 1.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_init_ratio2">Register (<A href=#mod___slcr> slcr </A>)phy_init_ratio2</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_init_ratio2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006134</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The user programmable init ratio used by Write Leveling FSM</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffc00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8b</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>22c00</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The user programmable init ratio used Gate Leveling FSM</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_init_ratio2@0XF8006134</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>22c00</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY init ratio register for data slice 2.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_init_ratio3">Register (<A href=#mod___slcr> slcr </A>)phy_init_ratio3</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_init_ratio3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006138</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The user programmable init ratio used by Write Leveling FSM</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffc00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>92</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>24800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The user programmable init ratio used Gate Leveling FSM</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_init_ratio3@0XF8006138</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>24800</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY init ratio register for data slice 3.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_rd_dqs_cfg0">Register (<A href=#mod___slcr> slcr </A>)phy_rd_dqs_cfg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_rd_dqs_cfg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006140</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>35</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>35</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for read DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the read DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line. Provide a default value of 0x40 for most applications</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: 1: overwrite the delay/tap value for read DQS slave DLL with the value of the debug_rd_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_rd_dqs_slave_force is 1, replace delay/tap value for read DQS slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_rd_dqs_cfg0@0XF8006140</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>35</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY read DQS configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_rd_dqs_cfg1">Register (<A href=#mod___slcr> slcr </A>)phy_rd_dqs_cfg1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_rd_dqs_cfg1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006144</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>35</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>35</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for read DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the read DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line. Provide a default value of 0x40 for most applications</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: 1: overwrite the delay/tap value for read DQS slave DLL with the value of the debug_rd_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_rd_dqs_slave_force is 1, replace delay/tap value for read DQS slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_rd_dqs_cfg1@0XF8006144</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>35</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY read DQS configuration register for data slice 1.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_rd_dqs_cfg2">Register (<A href=#mod___slcr> slcr </A>)phy_rd_dqs_cfg2</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_rd_dqs_cfg2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006148</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>35</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>35</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for read DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the read DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line. Provide a default value of 0x40 for most applications</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: 1: overwrite the delay/tap value for read DQS slave DLL with the value of the debug_rd_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_rd_dqs_slave_force is 1, replace delay/tap value for read DQS slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_rd_dqs_cfg2@0XF8006148</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>35</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY read DQS configuration register for data slice 2.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_rd_dqs_cfg3">Register (<A href=#mod___slcr> slcr </A>)phy_rd_dqs_cfg3</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_rd_dqs_cfg3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800614C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>35</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>35</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for read DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the read DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line. Provide a default value of 0x40 for most applications</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: 1: overwrite the delay/tap value for read DQS slave DLL with the value of the debug_rd_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_rd_dqs_slave_force is 1, replace delay/tap value for read DQS slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_rd_dqs_cfg3@0XF800614C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>35</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY read DQS configuration register for data slice 3.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_wr_dqs_cfg0">Register (<A href=#mod___slcr> slcr </A>)phy_wr_dqs_cfg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_wr_dqs_cfg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006154</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>77</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>77</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for write DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: 1: overwrite the delay/tap value for write DQS slave DLL with the value of the reg_phy_wr_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_wr_dqs_slave_force is 1, replace delay/tap value for write DQS slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_wr_dqs_cfg0@0XF8006154</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>77</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY write DQS configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_wr_dqs_cfg1">Register (<A href=#mod___slcr> slcr </A>)phy_wr_dqs_cfg1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_wr_dqs_cfg1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006158</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for write DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: 1: overwrite the delay/tap value for write DQS slave DLL with the value of the reg_phy_wr_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_wr_dqs_slave_force is 1, replace delay/tap value for write DQS slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_wr_dqs_cfg1@0XF8006158</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>7c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY write DQS configuration register for data slice 1.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_wr_dqs_cfg2">Register (<A href=#mod___slcr> slcr </A>)phy_wr_dqs_cfg2</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_wr_dqs_cfg2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800615C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for write DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: 1: overwrite the delay/tap value for write DQS slave DLL with the value of the reg_phy_wr_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_wr_dqs_slave_force is 1, replace delay/tap value for write DQS slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_wr_dqs_cfg2@0XF800615C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>7c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY write DQS configuration register for data slice 2.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_wr_dqs_cfg3">Register (<A href=#mod___slcr> slcr </A>)phy_wr_dqs_cfg3</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_wr_dqs_cfg3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006160</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>75</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>75</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for write DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: 1: overwrite the delay/tap value for write DQS slave DLL with the value of the reg_phy_wr_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_wr_dqs_slave_force is 1, replace delay/tap value for write DQS slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_wr_dqs_cfg3@0XF8006160</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>75</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY write DQS configuration register for data slice 3.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_we_cfg0">Register (<A href=#mod___slcr> slcr </A>)phy_we_cfg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_we_cfg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006168</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>e4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value to be used when fifo_we_X_force_mode is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_in_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: overwrite the delay/tap value for fifo_we_X slave DLL with the value of the debug_fifo_we_in_delayX bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_in_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Delay value to be used when debug_fifo_we_in_forceX is set to 1. R is the number of Ranks supported.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_we_cfg0@0XF8006168</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>e4</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY FIFO write enable configuration for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_we_cfg1">Register (<A href=#mod___slcr> slcr </A>)phy_we_cfg1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_we_cfg1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800616C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>df</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>df</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value to be used when fifo_we_X_force_mode is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_in_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: overwrite the delay/tap value for fifo_we_X slave DLL with the value of the debug_fifo_we_in_delayX bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_in_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Delay value to be used when debug_fifo_we_in_forceX is set to 1. R is the number of Ranks supported.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_we_cfg1@0XF800616C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>df</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY FIFO write enable configuration for data slice 1.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_we_cfg2">Register (<A href=#mod___slcr> slcr </A>)phy_we_cfg2</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_we_cfg2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006170</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value to be used when fifo_we_X_force_mode is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_in_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: overwrite the delay/tap value for fifo_we_X slave DLL with the value of the debug_fifo_we_in_delayX bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_in_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Delay value to be used when debug_fifo_we_in_forceX is set to 1. R is the number of Ranks supported.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_we_cfg2@0XF8006170</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>e0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY FIFO write enable configuration for data slice 2.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_we_cfg3">Register (<A href=#mod___slcr> slcr </A>)phy_we_cfg3</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_we_cfg3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006174</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>e7</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value to be used when fifo_we_X_force_mode is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_in_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: overwrite the delay/tap value for fifo_we_X slave DLL with the value of the debug_fifo_we_in_delayX bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_in_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Delay value to be used when debug_fifo_we_in_forceX is set to 1. R is the number of Ranks supported.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_we_cfg3@0XF8006174</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>e7</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY FIFO write enable configuration for data slice 3.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="wr_data_slv0">Register (<A href=#mod___slcr> slcr </A>)wr_data_slv0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>wr_data_slv0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800617C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>b7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>b7</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for write data slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQ muxes in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: 1: overwrite the delay/tap value for write data slave DLL with the value of the reg_phy_wr_data_slave_force bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_wr_data_slave_force is 1, replace delay/tap value for write data slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>wr_data_slv0@0XF800617C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>b7</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY write data slave ratio config for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="wr_data_slv1">Register (<A href=#mod___slcr> slcr </A>)wr_data_slv1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>wr_data_slv1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006180</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>bc</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>bc</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for write data slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQ muxes in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: 1: overwrite the delay/tap value for write data slave DLL with the value of the reg_phy_wr_data_slave_force bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_wr_data_slave_force is 1, replace delay/tap value for write data slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>wr_data_slv1@0XF8006180</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>bc</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY write data slave ratio config for data slice 1.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="wr_data_slv2">Register (<A href=#mod___slcr> slcr </A>)wr_data_slv2</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>wr_data_slv2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006184</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>bc</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>bc</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for write data slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQ muxes in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: 1: overwrite the delay/tap value for write data slave DLL with the value of the reg_phy_wr_data_slave_force bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_wr_data_slave_force is 1, replace delay/tap value for write data slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>wr_data_slv2@0XF8006184</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>bc</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY write data slave ratio config for data slice 2.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="wr_data_slv3">Register (<A href=#mod___slcr> slcr </A>)wr_data_slv3</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>wr_data_slv3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006188</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>b5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>b5</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for write data slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQ muxes in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: 1: overwrite the delay/tap value for write data slave DLL with the value of the reg_phy_wr_data_slave_force bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_wr_data_slave_force is 1, replace delay/tap value for write data slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>wr_data_slv3@0XF8006188</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>b5</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY write data slave ratio config for data slice 3.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="reg_64">Register (<A href=#mod___slcr> slcr </A>)reg_64</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_64</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006190</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_loopback</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Loopback testing. 1: enable, 0: disable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bl2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved for future Use.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_at_spd_atpg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: run scan test at slow clock speed but with high coverage 1: run scan test at full clock speed but with less coverage During normal function mode, this port must be set 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_enable</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable the internal BIST generation and checker logic when this port is set HIGH. Setting this port as 0 will stop the BIST generator/checker. In order to run BIST tests, this port must be set along with reg_phy_loopback.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_force_err</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This register bit is used to check that BIST checker is not giving false pass. When this port is set 1, data bit gets inverted before sending out to the external memory and BIST checker must return a mismatch error.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The mode bits select the pattern type generated by the BIST generator. All the patterns are transmitted continuously once enabled. 00: constant pattern (0 repeated on each DQ bit) 01: low freq pattern (00001111 repeated on each DQ bit) 10: PRBS pattern (2^7-1 PRBS pattern repeated on each DQ bit) Each DQ bit always has same data value except when early shifting in PRBS mode is requested 11: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_invert_clkout</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Inverts the polarity of DRAM clock. 0: core clock is passed on to DRAM 1: inverted core clock is passed on to DRAM. Use this when CLK can arrive at a DRAM device ahead of DQS or coincidence with DQS based on boad topology. This effectively delays the CLK to the DRAM device by half -cycle, providing a CLK edge that DQS can align to during leveling.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_all_dq_mpr_rd_resp</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: (default) best for DRAM read responses on only 1 DQ bit; works with reduced accuracy if DRAM provides read response on all bits. (In this mode dq_in[7:0] are OR'd together and dq_in[15:8] are OR'd together.) 1: assume DRAM provides read response on all DQ bits. (In this mode, dq_in[7:0] are OR'd together and dq_in[15:8] are AND'd together.)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_sel_logic</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects one of the two read leveling algorithms.'b0: Select algorithm # 1'b1: Select algorithm # 2 Please refer to Read Data Eye Training section in PHY User Guide for details about the Read Leveling algorithms</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_ctrl_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffc00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for address/command launch timing in phy_ctrl macro. This is the fraction of a clock cycle represented by the shift to be applied to the read DQS in units of 256ths. In other words, the full cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_ctrl_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: overwrite the delay/tap value for address/command timing slave DLL with the value of the reg_phy_rd_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_ctrl_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:21</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fe00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_rd_dqs_slave_force is 1, replace delay/tap value for address/command timing slave DLL with this value. This is a bit value, the remaining 2 bits are in register 0x65 bits[19:18].</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_use_rank0_delays</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>28:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Delay selection 0: Each Rank uses its own delay 1: Rank 0 delays are used for all ranks</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_lpddr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>29:29</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: DDR2 or DDR3. 1: LPDDR2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_cmd_latency</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>30:30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If set to 1, command comes to phy_ctrl through a flop.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_int_lpbk</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:31</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: enables the PHY internal loopback for DQ,DQS,DM before Ios. By default must be 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>reg_64@0XF8006190</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>10040080</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Training control 2</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="reg_65">Register (<A href=#mod___slcr> slcr </A>)reg_65</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_65</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006194</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_rl_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This delay determines when to select the active rank's ratio logic delay for Write Data and Write DQS slave delay lines after PHY receives a write command at Control Interface. The programmed value must be (Write Latency - 4) with a minimum value of 1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_rl_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This delay determines when to select the active rank's ratio logic delay for Read Data and Read DQS slave delay lines after PHY receives a read command at Control Interface. The programmed value must be (Read Latency - 3) with a minimum value of 1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dll_lock_diff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3c00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3c00</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The Maximum number of delay line taps variation allowed while maintaining the master DLL lock. When the PHY is in locked state and the variation on the clock exceeds the variation indicated by the register, the lock signal is deasserted</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_use_wr_level</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write Leveling training control. 0: Use register programmed ratio values 1: Use ratio for delay line calculated by write leveling Note: This is a Synchronous dynamic signal that requires timing closure.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_use_rd_dqs_gate_level</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Read DQS Gate training control. 0: Use register programmed ratio values 1: Use ratio for delay line calculated by DQS gate leveling Note: This is a Synchronous dynamic signal that requires timing closure.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_use_rd_data_eye_level</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Read Data Eye training control. 0: Use register programmed ratio values 1: Use ratio for delay line calculated by data eye leveling Note: This is a Synchronous dynamic signal that requires timing closure</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dis_calib_rst</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the dll_calib (internally generated) signal from resetting the Read Capture FIFO pointers and portions of phy_data. Note: dll_calib is (i) generated by dfi_ctrl_upd_req or (ii) by the PHY when it detects that the clock frequency variation has exceeded the bounds set by reg_phy_dll_lock_diff or (iii) periodically throughout the leveling process. dll_calib will update the slave DL with PVT-compensated values according to master DLL outputs</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_ctrl_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg-phy_rd_dqs_slave_force is 1, replace delay/tap value for address/command timing slave DLL with this value</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>reg_65@0XF8006194</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1fc82</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Training control 3</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="page_mask">Register (<A href=#mod___slcr> slcr </A>)page_mask</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>page_mask</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006204</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_page_addr_mask</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Set this register based on the value programmed on the reg_ddrc_addrmap_* registers. Set the Column address bits to 0. Set the Page and Bank address bits to 1. This is used for calculating page_match inside the slave modules in Arbiter. The page_match is considered during the arbitration process. This mask applies to 64-bit address and not byte address. Setting this value to 0 disables transaction prioritization based on page/bank match.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>page_mask@0XF8006204</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Page mask</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="axi_priority_wr_port0">Register (<A href=#mod___slcr> slcr </A>)axi_priority_wr_port0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>axi_priority_wr_port0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006208</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_pri_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Priority of this Write Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_aging_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable aging for this Write Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_urgent_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable urgent for this Write Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_page_match_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the page match feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_rmw_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FEATURE NOT SUPPORTED. Only 16-bit data aligned transfers allowed when ECC is used. All commands issued as Writes. No RMW support. Disable RMW command generated for this Port 1 - Disable RMW feature 0 - Enable RMW feature When Enabled and ECC mode is set all Write command generated by this port will be RMW.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>axi_priority_wr_port0@0XF8006208</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f03ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>803ff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AXI Priority control for write port 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="axi_priority_wr_port1">Register (<A href=#mod___slcr> slcr </A>)axi_priority_wr_port1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>axi_priority_wr_port1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800620C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_pri_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Priority of this Write Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_aging_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable aging for this Write Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_urgent_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable urgent for this Write Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_page_match_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the page match feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_rmw_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FEATURE NOT SUPPORTED. Only 16-bit data aligned transfers allowed when ECC is used. All commands issued as Writes. No RMW support. Disable RMW command generated for this Port 1 - Disable RMW feature 0 - Enable RMW feature When Enabled and ECC mode is set all Write command generated by this port will be RMW.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>axi_priority_wr_port1@0XF800620C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f03ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>803ff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AXI Priority control for write port 1.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="axi_priority_wr_port2">Register (<A href=#mod___slcr> slcr </A>)axi_priority_wr_port2</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>axi_priority_wr_port2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006210</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_pri_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Priority of this Write Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_aging_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable aging for this Write Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_urgent_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable urgent for this Write Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_page_match_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the page match feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_rmw_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FEATURE NOT SUPPORTED. Only 16-bit data aligned transfers allowed when ECC is used. All commands issued as Writes. No RMW support. Disable RMW command generated for this Port 1 - Disable RMW feature 0 - Enable RMW feature When Enabled and ECC mode is set all Write command generated by this port will be RMW.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>axi_priority_wr_port2@0XF8006210</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f03ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>803ff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AXI Priority control for write port 2.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="axi_priority_wr_port3">Register (<A href=#mod___slcr> slcr </A>)axi_priority_wr_port3</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>axi_priority_wr_port3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006214</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_pri_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Priority of this Write Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_aging_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable aging for this Write Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_urgent_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable urgent for this Write Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_page_match_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the page match feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_rmw_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FEATURE NOT SUPPORTED. Only 16-bit data aligned transfers allowed when ECC is used. All commands issued as Writes. No RMW support. Disable RMW command generated for this Port 1 - Disable RMW feature 0 - Enable RMW feature When Enabled and ECC mode is set all Write command generated by this port will be RMW.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>axi_priority_wr_port3@0XF8006214</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f03ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>803ff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AXI Priority control for write port 3.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="axi_priority_rd_port0">Register (<A href=#mod___slcr> slcr </A>)axi_priority_rd_port0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>axi_priority_rd_port0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006218</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_pri_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Priority of this Read Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_aging_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable aging for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_urgent_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable urgent for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_page_match_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the page match feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_set_hpr_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable reads to be generated as HPR for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>axi_priority_rd_port0@0XF8006218</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f03ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AXI Priority control for read port 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="axi_priority_rd_port1">Register (<A href=#mod___slcr> slcr </A>)axi_priority_rd_port1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>axi_priority_rd_port1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800621C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_pri_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Priority of this Read Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_aging_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable aging for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_urgent_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable urgent for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_page_match_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the page match feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_set_hpr_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable reads to be generated as HPR for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>axi_priority_rd_port1@0XF800621C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f03ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AXI Priority control for read port 1.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="axi_priority_rd_port2">Register (<A href=#mod___slcr> slcr </A>)axi_priority_rd_port2</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>axi_priority_rd_port2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006220</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_pri_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Priority of this Read Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_aging_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable aging for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_urgent_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable urgent for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_page_match_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the page match feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_set_hpr_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable reads to be generated as HPR for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>axi_priority_rd_port2@0XF8006220</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f03ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AXI Priority control for read port 2.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="axi_priority_rd_port3">Register (<A href=#mod___slcr> slcr </A>)axi_priority_rd_port3</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>axi_priority_rd_port3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006224</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_pri_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Priority of this Read Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_aging_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable aging for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_urgent_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable urgent for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_page_match_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the page match feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_set_hpr_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable reads to be generated as HPR for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>axi_priority_rd_port3@0XF8006224</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f03ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AXI Priority control for read port 3.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="lpddr_ctrl0">Register (<A href=#mod___slcr> slcr </A>)lpddr_ctrl0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>lpddr_ctrl0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80062A8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_lpddr2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: DDR2 or DDR3 in use. 1: LPDDR2 in Use.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_per_bank_refresh</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0:All bank refresh Per bank refresh allows traffic to flow to other banks. 1:Per bank refresh Per bank refresh is not supported on all LPDDR2 devices.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_derate_enable</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Timing parameter derating is disabled. 1: Timing parameter derating is enabled using MR4 read value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mr4_margin</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UNUSED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>lpddr_ctrl0@0XF80062A8</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ff7</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>LPDDR2 Control 0</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="lpddr_ctrl1">Register (<A href=#mod___slcr> slcr </A>)lpddr_ctrl1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>lpddr_ctrl1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80062AC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mr4_read_interval</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Interval between two MR4 reads, USED to derate the timing parameters.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>lpddr_ctrl1@0XF80062AC</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>LPDDR2 Control 1</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="lpddr_ctrl2">Register (<A href=#mod___slcr> slcr </A>)lpddr_ctrl2</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>lpddr_ctrl2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80062B0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_min_stable_clock_x1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Time to wait after the first CKE high, tINIT2. Units: 1 clock cycle. LPDDR2 typically requires 5 x tCK delay.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_idle_after_reset_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>12</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>120</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Idle time after the reset command, tINIT4. Units: 32 clock cycles.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_mrw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Time to wait during load mode register writes. Present only in designs configured to support LPDDR2. LPDDR2 typically requires value of 5.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>lpddr_ctrl2@0XF80062B0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>5125</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>LPDDR2 Control 2</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="lpddr_ctrl3">Register (<A href=#mod___slcr> slcr </A>)lpddr_ctrl3</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>lpddr_ctrl3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80062B4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_max_auto_init_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>a6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>a6</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Maximum duration of the auto initialization, tINIT5. Units: 1024 clock cycles. LPDDR2 typically requires 10 us.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dev_zqinit_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>12</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ZQ initial calibration, tZQINIT. Units: 32 clock cycles. LPDDR2 typically requires 1 us.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>lpddr_ctrl3@0XF80062B4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>12a6</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>LPDDR2 Control 3</B> -</TD> -</TR> -</TABLE> -<P> -<H1>POLL ON DCI STATUS</H1> -<H2><a name="DDRIOB_DCI_STATUS">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DCI_STATUS</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DCI_STATUS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B74</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DONE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI done signal</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DCI_STATUS@0XF8000B74</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>tobe</B> -</TD> -</TR> -</TABLE> -<P> -<H1>UNLOCK DDR</H1> -<H2><a name="ddrc_ctrl">Register (<A href=#mod___slcr> slcr </A>)ddrc_ctrl</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ddrc_ctrl</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_soft_rstb</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Active low soft reset. Update during normal operation. 0: Resets the controller 1: Takes the controller out of reset. Dynamic Bit Field. Note: Software changes DRAM controller register values only when the controller is in the reset state, except for bit fields that can be dymanically updated.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_powerdown_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controller power down control. Update during normal operation. Enable the controller to powerdown after it becomes idle. Dynamic Bit Field. 0: disable 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_data_bus_width</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR bus width control 00: 32-bit 01: 16-bit 1x: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_burst8_refresh</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Refresh timeout. Programmed value plus one will be the number of refresh timeouts that will be allowed to accumulate before traffic is blocked and the refreshes are forced to execute. Closing pages to perform a refresh is a one-time penalty that must be paid for each group of refreshes; therefore, performing refreshes in a burst reduces the per-refresh penalty of these page closings. Higher numbers for burst_of_N_refresh slightly increases utilization; lower numbers decreases the worst-case latency associated with refreshes. 0: single refresh 1: burst-of-2 ... 7: burst-of-8 refresh</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rdwr_idle_gap</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When the preferred transaction store is empty for this many clock cycles, switch to the alternate transaction store if it is non-empty. The read transaction store (both high and low priority) is the default preferred transaction store and the write transaction store is the alternate store. When 'Prefer write over read' is set this is reversed.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_rd_bypass</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present in designs supporting read bypass. For Debug only. 0: Do not disable bypass path for high priority read page hits. 1: disable bypass path for high priority read page hits.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_act_bypass</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present in designs supporting activate bypass. For Debug only. 0: Do not disable bypass path for high priority read activates. 1: disable bypass path for high priority read activates.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_auto_refresh</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable auto-refresh. 0: do not disable auto-refresh. 1: disable auto-refresh. Dynamic Bit Field. Note: When this transitions from 0 to 1, any pending refreshes will be immediately scheduled by the controller.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ddrc_ctrl@0XF8006000</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>81</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRC Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>CHECK DDR STATUS</H1> -<H2><a name="mode_sts_reg">Register (<A href=#mod___slcr> slcr </A>)mode_sts_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>mode_sts_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006054</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ddrc_reg_operating_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Gives the status of the controller. 0: DDRC Init 1: Normal operation 2: Power-down mode 3: Self-refresh mode 4 and above: deep power down mode (LPDDR2 only)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>mode_sts_reg@0XF8006054</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>tobe</B> -</TD> -</TR> -</TABLE> -<P> -</TABLE> -<P> -<H2><a name="ps7_mio_init_data_2_0">ps7_mio_init_data_2_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_UNLOCK"> -SLCR_UNLOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#GPIOB_CTRL"> -GPIOB_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PS IO Buffer Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_ADDR0"> -DDRIOB_ADDR0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B40</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Config for Address 0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_ADDR1"> -DDRIOB_ADDR1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B44</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Config for Address 1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DATA0"> -DDRIOB_DATA0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B48</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Config for Data 15:0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DATA1"> -DDRIOB_DATA1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B4C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Config for Data 31:16</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DIFF0"> -DDRIOB_DIFF0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B50</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Config for DQS 1:0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DIFF1"> -DDRIOB_DIFF1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B54</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Config for DQS 3:2</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_CLOCK"> -DDRIOB_CLOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B58</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Config for Clock Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DRIVE_SLEW_ADDR"> -DDRIOB_DRIVE_SLEW_ADDR -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B5C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Slew for Address</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DRIVE_SLEW_DATA"> -DDRIOB_DRIVE_SLEW_DATA -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Slew for Data</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DRIVE_SLEW_DIFF"> -DDRIOB_DRIVE_SLEW_DIFF -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B64</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Slew for Diff</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DRIVE_SLEW_CLOCK"> -DDRIOB_DRIVE_SLEW_CLOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B68</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Slew for Clock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DDR_CTRL"> -DDRIOB_DDR_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B6C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Buffer Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DCI_CTRL"> -DDRIOB_DCI_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIOB DCI configuration</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DCI_CTRL"> -DDRIOB_DCI_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIOB DCI configuration</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DCI_CTRL"> -DDRIOB_DCI_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIOB DCI configuration</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_00"> -MIO_PIN_00 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000700</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 0 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_01"> -MIO_PIN_01 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000704</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 1 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_02"> -MIO_PIN_02 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000708</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 2 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_03"> -MIO_PIN_03 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800070C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 3 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_04"> -MIO_PIN_04 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000710</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 4 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_05"> -MIO_PIN_05 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000714</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 5 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_06"> -MIO_PIN_06 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000718</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 6 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_07"> -MIO_PIN_07 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800071C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 7 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_08"> -MIO_PIN_08 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000720</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 8 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_09"> -MIO_PIN_09 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000724</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 9 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_10"> -MIO_PIN_10 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000728</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 10 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_11"> -MIO_PIN_11 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800072C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 11 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_12"> -MIO_PIN_12 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000730</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 12 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_13"> -MIO_PIN_13 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000734</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 13 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_14"> -MIO_PIN_14 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000738</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 14 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_15"> -MIO_PIN_15 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800073C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 15 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_16"> -MIO_PIN_16 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000740</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 16 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_17"> -MIO_PIN_17 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000744</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 17 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_18"> -MIO_PIN_18 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000748</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 18 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_19"> -MIO_PIN_19 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800074C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 19 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_20"> -MIO_PIN_20 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000750</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 20 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_21"> -MIO_PIN_21 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000754</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 21 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_22"> -MIO_PIN_22 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000758</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 22 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_23"> -MIO_PIN_23 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800075C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 23 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_24"> -MIO_PIN_24 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000760</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 24 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_25"> -MIO_PIN_25 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000764</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 25 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_26"> -MIO_PIN_26 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000768</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 26 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_27"> -MIO_PIN_27 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800076C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 27 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_28"> -MIO_PIN_28 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000770</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 28 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_29"> -MIO_PIN_29 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000774</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 29 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_30"> -MIO_PIN_30 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000778</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 30 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_31"> -MIO_PIN_31 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800077C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 31 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_32"> -MIO_PIN_32 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000780</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 32 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_33"> -MIO_PIN_33 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000784</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 33 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_34"> -MIO_PIN_34 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000788</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 34 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_35"> -MIO_PIN_35 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800078C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 35 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_36"> -MIO_PIN_36 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000790</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 36 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_37"> -MIO_PIN_37 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000794</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 37 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_38"> -MIO_PIN_38 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000798</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 38 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_39"> -MIO_PIN_39 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800079C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 39 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_40"> -MIO_PIN_40 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007A0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 40 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_41"> -MIO_PIN_41 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007A4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 41 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_42"> -MIO_PIN_42 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007A8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 42 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_43"> -MIO_PIN_43 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007AC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 43 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_44"> -MIO_PIN_44 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007B0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 44 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_45"> -MIO_PIN_45 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007B4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 45 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_46"> -MIO_PIN_46 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007B8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 46 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_47"> -MIO_PIN_47 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007BC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 47 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_48"> -MIO_PIN_48 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007C0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 48 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_49"> -MIO_PIN_49 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007C4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 49 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_50"> -MIO_PIN_50 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007C8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 50 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_51"> -MIO_PIN_51 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007CC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 51 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_52"> -MIO_PIN_52 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007D0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 52 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_53"> -MIO_PIN_53 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007D4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Pin 53 Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SD0_WP_CD_SEL"> -SD0_WP_CD_SEL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000830</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SDIO 0 WP CD select</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_LOCK"> -SLCR_LOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ps7_mio_init_data_2_0">ps7_mio_init_data_2_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<H1>SLCR SETTINGS</H1> -<H2><a name="SLCR_UNLOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_UNLOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_UNLOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UNLOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When write data contains the unlock key value of 0xDF0D, the write protection mode is disabled. All registers defined in SLCR are writeable until locked again through the SLCR_LOCK register. A read of this register returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_UNLOCK@0XF8000008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -</TABLE> -<P> -<H1>OCM REMAPPING</H1> -<H2><a name="GPIOB_CTRL">Register (<A href=#mod___slcr> slcr </A>)GPIOB_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GPIOB_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VREF_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables VREF internal generator</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VREF_PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables internal pullup. 0 - no pullup. 1 - pullup.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLK_PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables internal pullup. 0: no pullup. 1: pullup.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRSTN_PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables internal pullup. 0: no pullup. 1: pullup.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>GPIOB_CTRL@0XF8000B00</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>303</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PS IO Buffer Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>DDRIOB SETTINGS</H1> -<H2><a name="DDRIOB_ADDR0">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_ADDR0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_ADDR0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B40</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_POWER</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies DDR IOB input amp power mode. 0: low power mode. 1: high performance mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Input buffer controls. 00: Input off, reads 0. 01: Vref based differential receiver for SSTL, HSTL. 10: Differential input receiver. 11: LVCMOS receiver.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_UPDATE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri State Termination Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCR_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update 00: DCI Disabled 01: DCI Drive (HSTL12_DCI) 10: reserved 11: DCI Termination (SSTL15_T_DCI)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use dynamic_dci_ts to control dci 0: termination enabled 1: use 'dynamic_dci_ts' control termination</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OUTPUT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables output mode to enable output ties to 00: ibuf 01 and 10: reserved 11: obuf</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>enables pullup on output 0: no pullup 1: pullup enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_ADDR0@0XF8000B40</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Config for Address 0</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_ADDR1">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_ADDR1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_ADDR1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B44</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_POWER</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies DDR IOB input amp power mode. 0: low power mode. 1: high performance mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Input buffer controls. 00: Input off, reads 0. 01: Vref based differential receiver for SSTL, HSTL. 10: Differential input receiver. 11: LVCMOS receiver.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_UPDATE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri State Termination Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCR_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update 00: DCI Disabled 01: DCI Drive (HSTL12_DCI) 10: reserved 11: DCI Termination (SSTL15_T_DCI)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use dynamic_dci_ts to control dci 0: termination enabled 1: use 'dynamic_dci_ts' control termination</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OUTPUT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables output mode to enable output ties to 00: ibuf 01 and 10: reserved 11: obuf</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>enables pullup on output 0: no pullup 1: pullup enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_ADDR1@0XF8000B44</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Config for Address 1</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DATA0">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DATA0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DATA0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B48</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_POWER</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies DDR IOB input amp power mode. 0: low power mode. 1: high performance mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Input buffer controls. 00: Input off, reads 0. 01: Vref based differential receiver for SSTL, HSTL. 10: Differential input receiver. 11: LVCMOS receiver.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_UPDATE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri State Termination Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCR_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update 00: DCI Disabled 01: DCI Drive (HSTL12_DCI) 10: reserved 11: DCI Termination (SSTL15_T_DCI)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use dynamic_dci_ts to control dci 0: termination enabled 1: use 'dynamic_dci_ts' control termination</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OUTPUT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables output mode to enable output ties to 00: ibuf 01 and 10: reserved 11: obuf</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>enables pullup on output 0: no pullup 1: pullup enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DATA0@0XF8000B48</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>672</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Config for Data 15:0</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DATA1">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DATA1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DATA1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B4C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_POWER</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies DDR IOB input amp power mode. 0: low power mode. 1: high performance mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Input buffer controls. 00: Input off, reads 0. 01: Vref based differential receiver for SSTL, HSTL. 10: Differential input receiver. 11: LVCMOS receiver.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_UPDATE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri State Termination Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCR_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update 00: DCI Disabled 01: DCI Drive (HSTL12_DCI) 10: reserved 11: DCI Termination (SSTL15_T_DCI)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use dynamic_dci_ts to control dci 0: termination enabled 1: use 'dynamic_dci_ts' control termination</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OUTPUT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables output mode to enable output ties to 00: ibuf 01 and 10: reserved 11: obuf</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>enables pullup on output 0: no pullup 1: pullup enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DATA1@0XF8000B4C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>672</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Config for Data 31:16</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DIFF0">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DIFF0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DIFF0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B50</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_POWER</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies DDR IOB input amp power mode. 0: low power mode. 1: high performance mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Input buffer controls. 00: Input off, reads 0. 01: Vref based differential receiver for SSTL, HSTL. 10: Differential input receiver. 11: LVCMOS receiver.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_UPDATE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri State Termination Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCR_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update 00: DCI Disabled 01: DCI Drive (HSTL12_DCI) 10: reserved 11: DCI Termination (SSTL15_T_DCI)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use dynamic_dci_ts to control dci 0: termination enabled 1: use 'dynamic_dci_ts' control termination</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OUTPUT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables output mode to enable output ties to 00: ibuf 01 and 10: reserved 11: obuf</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>enables pullup on output 0: no pullup 1: pullup enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DIFF0@0XF8000B50</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>674</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Config for DQS 1:0</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DIFF1">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DIFF1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DIFF1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B54</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_POWER</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies DDR IOB input amp power mode. 0: low power mode. 1: high performance mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Input buffer controls. 00: Input off, reads 0. 01: Vref based differential receiver for SSTL, HSTL. 10: Differential input receiver. 11: LVCMOS receiver.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_UPDATE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri State Termination Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCR_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update 00: DCI Disabled 01: DCI Drive (HSTL12_DCI) 10: reserved 11: DCI Termination (SSTL15_T_DCI)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use dynamic_dci_ts to control dci 0: termination enabled 1: use 'dynamic_dci_ts' control termination</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OUTPUT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables output mode to enable output ties to 00: ibuf 01 and 10: reserved 11: obuf</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>enables pullup on output 0: no pullup 1: pullup enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DIFF1@0XF8000B54</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>674</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Config for DQS 3:2</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_CLOCK">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_CLOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_CLOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B58</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_POWER</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies DDR IOB input amp power mode. 0: low power mode. 1: high performance mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Input buffer controls. 00: Input off, reads 0. 01: Vref based differential receiver for SSTL, HSTL. 10: Differential input receiver. 11: LVCMOS receiver.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_UPDATE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri State Termination Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCR_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update 00: DCI Disabled 01: DCI Drive (HSTL12_DCI) 10: reserved 11: DCI Termination (SSTL15_T_DCI)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use dynamic_dci_ts to control dci 0: termination enabled 1: use 'dynamic_dci_ts' control termination</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OUTPUT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables output mode to enable output ties to 00: ibuf 01 and 10: reserved 11: obuf</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>enables pullup on output 0: no pullup 1: pullup enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_CLOCK@0XF8000B58</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Config for Clock Output</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DRIVE_SLEW_ADDR">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DRIVE_SLEW_ADDR</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DRIVE_SLEW_ADDR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B5C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRIVE_P</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIO drive strength for the P devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRIVE_N</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIO drive strength for the N devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLEW_P</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIO slew rate for the P devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLEW_N</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>180000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIO slew rate for the N devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GTL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Test Control 000: Normal Operation 001 to 111: Test Mode</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RTERM</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f8000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Program the rterm</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DRIVE_SLEW_ADDR@0XF8000B5C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>18c61c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Slew for Address</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DRIVE_SLEW_DATA">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DRIVE_SLEW_DATA</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DRIVE_SLEW_DATA</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRIVE_P</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIO drive strength for the P devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRIVE_N</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIO drive strength for the N devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLEW_P</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIO slew rate for the P devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLEW_N</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIO slew rate for the N devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GTL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Test Control 000: Normal Operation 001 to 111: Test Mode</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RTERM</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f8000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Program the rterm</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DRIVE_SLEW_DATA@0XF8000B60</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>f9861c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Slew for Data</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DRIVE_SLEW_DIFF">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DRIVE_SLEW_DIFF</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DRIVE_SLEW_DIFF</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B64</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRIVE_P</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIO drive strength for the P devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRIVE_N</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIO drive strength for the N devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLEW_P</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIO slew rate for the P devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLEW_N</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIO slew rate for the N devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GTL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Test Control 000: Normal Operation 001 to 111: Test Mode</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RTERM</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f8000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Program the rterm</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DRIVE_SLEW_DIFF@0XF8000B64</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>f9861c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Slew for Diff</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DRIVE_SLEW_CLOCK">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DRIVE_SLEW_CLOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DRIVE_SLEW_CLOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B68</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRIVE_P</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIO drive strength for the P devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRIVE_N</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIO drive strength for the N devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLEW_P</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIO slew rate for the P devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLEW_N</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIO slew rate for the N devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GTL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Test Control 000: Normal Operation 001 to 111: Test Mode</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RTERM</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f8000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Program the rterm</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DRIVE_SLEW_CLOCK@0XF8000B68</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>f9861c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Slew for Clock</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DDR_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DDR_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DDR_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B6C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VREF_INT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables VREF internal generator</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VREF_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1e</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies DDR IOB Vref generator output: 0001: VREF = 0.6V for LPDDR2 with 1.2V IO 0100: VREF = 0.75V for DDR3 with 1.5V IO 1000: VREF = 0.90V for DDR2 with 1.8V IO</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VREF_EXT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables External VREF input x0: Disable External VREF for lower 16 bits x1: Enable External VREF for lower 16 bits 0x: Disable External VREF for upper 16 bits 1X: Enable External VREF for upper 16 bits</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VREF_PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>180</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables VREF pull-up resistors x0: Disable VREF pull-up for lower 16 bits x1: Enable VREF pull-up for lower 16 bits 0x: Disable VREF pull-up for upper 16 bits 1x: Enable VREF pull-up for upper 16 bits</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>REFIO_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables VRP,VRN 0: VRP/VRN not used 1: VRP/VRN used as refio</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>REFIO_TEST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable test mode for VRP and VRN: 00: VRP/VRN test mode not used 11: VRP/VRN test mode enabled using vref based receiver. VRP/VRN control is set using the VRN_OUT, VRP_OUT, VRN_TRI, VRP_TRI fields in the DDRIOB_DCI_CTRL register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>REFIO_PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables VRP,VRN pull-up resistors 0: no pull-up 1: enable pull-up</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRST_B_PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables pull-up resistors 0: no pull-up 1: enable pull-up</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CKE_PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables pull-up resistors 0: no pull-up 1: enable pull-up</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DDR_CTRL@0XF8000B6C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>260</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Buffer Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>ASSERT RESET</H1> -<H2><a name="DDRIOB_DCI_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DCI_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DCI_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>At least toggle once to initialise flops in DCI system</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VRN_OUT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>VRN output value</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DCI_CTRL@0XF8000B70</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>21</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>21</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRIOB DCI configuration</B> -</TD> -</TR> -</TABLE> -<P> -<H1>DEASSERT RESET</H1> -<H2><a name="DDRIOB_DCI_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DCI_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DCI_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>At least toggle once to initialise flops in DCI system</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VRN_OUT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>VRN output value</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DCI_CTRL@0XF8000B70</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>21</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRIOB DCI configuration</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DCI_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DCI_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DCI_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>At least toggle once to initialise flops in DCI system</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1 if any iob's use a terminate type, or if dci test block used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VRP_TRI</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>VRP tristate value</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VRN_TRI</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>VRN tristate value</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VRP_OUT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>VRP output value</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VRN_OUT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>VRN output value</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>NREF_OPT1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>NREF_OPT2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>700</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>NREF_OPT4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PREF_OPT1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1c000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PREF_OPT2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UPDATE_CONTROL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INIT_COMPLETE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:21</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>test Internal to IO bank</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TST_CLK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>22:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Emulate DCI clock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TST_HLN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:23</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Emulate comparator output (VRN)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TST_HLP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>24:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Emulate comparator output (VRP)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TST_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:25</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Emulate Reset</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INT_DCI_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:26</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Need explanation here</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DCI_CTRL@0XF8000B70</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7ffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>823</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRIOB DCI configuration</B> -</TD> -</TR> -</TABLE> -<P> -<H1>MIO PROGRAMMING</H1> -<H2><a name="MIO_PIN_00">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_00</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_00</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000700</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high. 0: disable 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 1 chip select</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Chip Select 0 10: NAND Flash Chip Select 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 0 (bank 0) others: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Select IO Buffer Edge Rate, applicable when IO_Type= LVCMOS18, LVCMOS25 or LVCMOS33. 0: Slow CMOS edge 1: Fast CMOS edge</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Select the IO Buffer Type. 000: LVTTL 001: LVCMOS18 010: LVCMOS25 011, 101, 110, 111: LVCMOS33 100: HSTL</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables pull-up on IO Buffer pin 0: disable 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable HSTL Input Buffer to save power when it is an output-only (IO_Type must be HSTL). 0: enable 1: disable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_00@0XF8000700</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1600</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 0 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_01">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_01</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_01</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000704</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 0 Chip Select</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM Address Bit 25 10: SRAM/NOR Chip Select 1 11: SDIO 1 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 1 (bank 0) others: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_01@0XF8000704</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>702</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 1 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_02">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_02</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_02</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000708</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 0 IO Bit 0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 8</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: NAND Flash ALEn 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 2 (bank 0) others: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_02@0XF8000708</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>702</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 2 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_03">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_03</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_03</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800070C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 0 IO Bit 1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 9</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Data bit 0 10: NAND WE_B output 11: SDIO 1 Card Power output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 3 (bank 0) others: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_03@0XF800070C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>702</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 3 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_04">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_04</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_04</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000710</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 0 IO Bit 2</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 10</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Data Bit 1 10: NAND Flash IO Bit 2 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 4 (bank 0) others: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_04@0XF8000710</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>702</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 4 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_05">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_05</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_05</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000714</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 0 IO Bit 3</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 11</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Data Bit 2 10: NAND Flash IO Bit 0 11: SDIO 1 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 5 (bank 0) others: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_05@0XF8000714</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>702</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 5 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_06">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_06</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_06</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000718</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 0 Clock Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 12</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Data Bit 3 10: NAND Flash IO Bit 1 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 6 (bank 0) others: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_06@0XF8000718</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>702</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 6 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_07">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_07</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_07</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800071C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 13</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR OE_B 10: NAND Flash CLE_B 11: SDIO 1 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 7 Output-only (bank 0) others: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_07@0XF800071C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 7 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_08">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_08</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_08</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000720</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI Feedback Output Clock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 14</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR WE_B 10: NAND Flash RD_B 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 8 Output-only (bank 0) 001: CAN 1 Tx 010: sram, Output, smc_sram_bls_b 011 to 110: reserved 111: UART 1 TxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_08@0XF8000720</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>702</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 8 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_09">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_09</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_09</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000724</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 1 Flash Memory Clock Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 15</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Data Bit 6 10: NAND Flash IO Bit 4 11: SDIO 1 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 9 (bank 0) 001: CAN 1 Rx 010 to 110: reserved 111: UART 1 RxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_09@0XF8000724</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1600</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 9 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_10">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_10</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_10</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000728</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 1 IO Bit 0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 2</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Data Bit 7 10: NAND Flash IO Bit 5 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 10 (bank 0) 001: CAN 0 Rx 010: I2C 0 Serial Clock 011: PJTAG TDI 100: SDIO 1 IO Bit 0 101: SPI 1 MOSI 110: reserved 111: UART 0 RxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_10@0XF8000728</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1640</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 10 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_11">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_11</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_11</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800072C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 1 IO Bit 1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 3</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Data Bit 4 10: NAND Flash IO Bit 6 11: SDIO 1 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 11 (bank 0) 001: CAN 0 Tx 010: I2C Serial Data 011: PJTAG TDO 100: SDIO 1 Command 101: SPI 1 MISO 110: reserved 111: UART 0 TxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_11@0XF800072C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1640</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 11 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_12">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_12</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_12</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000730</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 1 IO Bit 2</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Clock output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Wait 10: NAND Flash IO Bit 7 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 12 (bank 0) 001: CAN 1 Tx 010: I2C 1 Serial Clock 011: PJTAG TCK 100: SDIO 1 Clock 101: SPI 1 Serial Clock 110: reserved 111: UART 1 TxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_12@0XF8000730</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1640</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 12 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_13">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_13</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_13</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000734</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 1 IO Bit 3</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Control Signal output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Data Bit 5 10: NAND Flash IO Bit 3 11: SDIO 1 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 13 (bank 0) 001: CAN 1 Rx 010: I2C 1 Serial Data 011: PJTAG TMS 100: SDIO 1 IO Bit 1 101: SPI 1 Slave Select 0 110: reserved 111: UART 1 RxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_13@0XF8000734</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1640</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 13 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_14">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_14</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_14</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000738</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: NAND Flash Busy 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 14 (bank 0) 001: CAN 0 Rx 010: I2C 0 Serial Clock 011: SWDT Clock Input 100: SDIO 1 IO Bit 2 101: SPI 1 slave select 1 110: reserved 111: UART 0 RxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_14@0XF8000738</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1600</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 14 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_15">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_15</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_15</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800073C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 0 10: reserved 11: SDIO 1 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 15 (bank 0) 001: CAN 0 Tx 010: I2C 0 Serial Data 011: SWDT Reset Out 100: SDIO 1 IO Bit 3 101: SPI 1 Slave Select 2 110: reserved 111: UART 0 TxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_15@0XF800073C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1600</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 15 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_16">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_16</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_16</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000740</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII Tx Clock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 4</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 1 10: NAND Flash IO Bit 8 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 16 (bank 0) 001: CAN 1 Tx 010: I2C 1 Serial Clock 011: reserved 100: SDIO 0 Clock 101: SPI 0 Serial Clock 110: TTC 1 Wave Output 111: UART 1 TxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_16@0XF8000740</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2902</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 16 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_17">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_17</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_17</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000744</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII TxD Bit 0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 5</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 2 10: NAND Flash IO Bit 9 11: SDIO 1 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 17 (bank 0) 001: CAN 1 Rx 010: I2C 1 Serial Data 011: reserved 100: SDIO 0 Command 101: SPI 0 MISO 110 TTC 1 Clock Input 111: UART 1 RxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_17@0XF8000744</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2902</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 17 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_18">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_18</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_18</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000748</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII TxD Bit 1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 6</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 3 10: NAND Flash IO Bit 10 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 18 (bank 0) 001: CAN 0 Rx 010: I2C 0 Serial Clock 011: reserved 100: SDIO 0 IO Bit 0 101: SPI 0 Slave Select 0 110: TTC 0 Wave Out 111: UART 0 RxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_18@0XF8000748</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2902</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 18 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_19">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_19</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_19</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800074C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII TxD Bit 2</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 7</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 4 10: NAND Flash IO Bit 11 111: SDIO 1 Power Control Output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 19 (bank 0) 001: CAN 0 Tx 010: I2C 0 Serial Data 011: reserved 100: SDIO 0 IO Bit 1 101: SPI 0 Slave Select 1 Output 110: TTC 0 Clock Input 111: UART 0 TxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_19@0XF800074C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2902</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 19 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_20">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_20</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_20</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000750</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII TxD Bit 3</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 5 10: NAND Flash IO Bit 12 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 20 (bank 0) 001: CAN 1 Tx 010: I2C 1 Serial Clock 011: reserved 100: SDIO 0 IO Bit 2 101: SPI 0 Slave Select 2 110: reserved 111: UART 1 TxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_20@0XF8000750</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2902</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 20 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_21">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_21</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_21</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000754</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII Tx Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 6 10: NAND Flash IO Bit 13 11: SDIO 1 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 21 (bank 0) 001: CAN 1 Rx 010: I2C 1 Serial Data 011: reserved 100: SDIO 0 IO Bit 3 101: SPI 0 MOSI 110: reserved 111: UART 1 RxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_21@0XF8000754</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2902</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 21 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_22">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_22</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_22</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000758</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII Rx Clock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 2</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 7 10: NAND Flash IO Bit 14 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 22 (bank 0) 001: CAN 0 Rx 010: I2C 0 Serial Clock 011: PJTAG TDI 100: SDIO 1 IO Bit 0 101: SPI 1 MOSI 110: reserved 111: UART 0 RxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_22@0XF8000758</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>903</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 22 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_23">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_23</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_23</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800075C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII RxD 0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 3</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 8 10: NAND Flash IO Bit 15 11: SDIO 1 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 23 (bank 0) 001: CAN 0 Tx 010: I2C 0 Serial Data 011: PJTAG TDO 100: SDIO 1 Command 101: SPI 1 MISO 110: reserved 111: UART 0 TxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_23@0XF800075C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>903</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 23 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_24">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_24</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_24</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000760</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII RxD Bit 1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Clock output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 9 10: reserved 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 24 (bank 0) 001: CAN 1 Tx 010: I2C 1 Serial Clock 011: PJTAG TCK 100: SDIO 1 Clock 101: SPI 1 serial clock 110: reserved 111: UART 1 TxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_24@0XF8000760</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>903</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 24 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_25">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_25</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_25</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000764</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII RxD Bit2</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Control Signal output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 10 10: reserved 11: SDIO 1 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 25 (bank 0) 001: CAN 1 Rx 010: I2C 1 Serial Data 011: PJTAG TMS 100: SDIO 1 IO Bit 1 101: SPI 1 Slave Select 0 110: reserved 111: UART 1 RxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_25@0XF8000764</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>903</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 25 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_26">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_26</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_26</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000768</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII RxD Bit 3</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 11 10: reserved 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 26 (bank 0) 001: CAN 0 Rx 010: I2C 0 Serial Clock 011: SWDT Clock Input 100: SDIO 1 IO Bit 2 101: SPI 1 Slave Select 1 110: reserved 111: UART 0 RxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_26@0XF8000768</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>903</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 26 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_27">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_27</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_27</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800076C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII Rx Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 12 10: reserved 11: SDIO 1 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 27 (bank 0) 001: CAN 0 Tx 010: I2C 0 Serial Data 011: SWDT Reset Out 100: SDIO 1 IO Bit 3 101: SPI 1 Slave Select 2 110: reserved 111: UART 0 TxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_27@0XF800076C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>903</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 27 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_28">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_28</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_28</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000770</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII Tx Clock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Data Bit 4</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 13 10: reserved 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 28 (bank 0) 001: CAN 1 Tx 010: I2C 1 Serial Clock 011: reserved 100: SDIO 0 Clock 101: SPI 0 Serial Clock 110: TTC 1 Wave Out 111: UART 1 TxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_28@0XF8000770</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 28 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_29">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_29</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_29</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000774</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII TxD Bit 0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Direction</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 14 10: reserved 11: SDIO 1 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 29 (bank 0) 001: CAN 1 Rx 010: I2C 1 Serial Data 011: reserved 100: SDIO 0 Command 101: SPI 0 MISO 110: TTC 1 Clock Input 111: UART 1 RxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_29@0XF8000774</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>305</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 29 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_30">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_30</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_30</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000778</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII TxD Bit 1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Stop</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 15 10: reserved 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 30 (bank 0) 001: CAN 0 Rx 010: I2C 0 Serial Clock 011: reserved 100: SDIO 0 IO Bit 0 101: SPI 0 Slave Select 0 110: TTC 0 Wave Out 111: UART 0 RxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_30@0XF8000778</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 30 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_31">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_31</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_31</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800077C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII TxD Bit 2</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Next</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 16 10: reserved 11: SDIO 1 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 31 (bank 0) 001: CAN 0 Tx 010: I2C 0 Serial Data 011: reserved 100: SDIO 0 IO Bit 1 101: SPI 0 Slave Select 1 110: TTC 0 Clock Intput 111: UART 0 TxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_31@0XF800077C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>305</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 31 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_32">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_32</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000780</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII TxD Bit 3</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Data Bit 0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 17 10: reserved 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 32 (bank 1) 001: CAN 1 Tx 010: I2C 1 Serial Clock 011: reserved 100: SDIO 0 IO Bit 2 101: SPI 0 Slave Select 2 110: reserved 111: UART 1 TxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_32@0XF8000780</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 32 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_33">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_33</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_33</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000784</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII Tx Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Data Bit 1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 18 10: reserved 11: SDIO 1 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 33 (Bank 1) 001: CAN 1 Rx 010: I2C 1 Serial Data 011: reserved 100: SDIO 0 IO Bit 3 101: SPI 0 MOSI 110: reserved 111: UART 1 RxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_33@0XF8000784</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 33 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_34">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_34</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_34</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000788</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII Rx Clock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Data Bit 2</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 19 10: reserved 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 34 (bank 1) 001: CAN 0 Rx 010: I2C 0 Serial Clock 011: PJTAG TDI 100: SDIO 1 IO Bit 0 110: reserved 111: UART 0 RxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_34@0XF8000788</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 34 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_35">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_35</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_35</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800078C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII RxD data Bit 0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Data Bit 3</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 20 10: reserved 11: SDIO 1 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 35 (bank 1) 001: CAN 0 Tx 010: I2C 0 Serial Data 011: PJTAG TDO 100: SDIO 1 Command 101: SPI 1 Command 110: reserved 111: UART 0 TxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_35@0XF800078C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 35 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_36">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_36</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_36</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000790</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII Data Bit 1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Clock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 21 10: reserved 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 36 (bank 1) 001: CAN 1 Tx 010: I2C 1 Serial Clock 011: PJTAG TCK 100: SDIO 1 Clock 101: SPI 1 Clock 110: reserved 111: UART 1 TxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_36@0XF8000790</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>305</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 36 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_37">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_37</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_37</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000794</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Data Bit 5</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 22 10: reserved 11: SDIO 1 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 37 (bank 1) 001: CAN 1 Rx 010: I2C 1 Serial Data 011: PJTAG TMS+H2129 100: SDIO 1 IO Bit 1 101: SPI 1 Slave Select 0 110: reserved 111: UART 1 RxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_37@0XF8000794</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 37 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_38">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_38</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_38</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000798</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII RxD Data Bit 3</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Data Bit 6</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 23 10: reserved 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 38 (bank 1) 001: CAN 0 Rx 010: I2C 0 Serial Clock 011: SWDT Clock In 100: SDIO 1 IO Bit 2 101: SPI 1 Slave Select 1 110: reserved 111: UART 0 RxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_38@0XF8000798</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 38 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_39">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_39</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_39</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800079C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII Rx Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Data Bit 7</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 24 10: reserved 11: SDIO 1 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 39 (bank 1) 001: CAN 0 Tx 010: I2C 0 Serial Data 011: SWDT Reset Out 100: SDIO 1 IO Bit 3 101: SPI 1 Slave Select 2 110: reserved 111: UART 0 TxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_39@0XF800079C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 39 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_40">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_40</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_40</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007A0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Data Bit 4</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 40 (bank 1) 001: CAN 1 Tx 010: I2C 1 Serial Clock 011: reserved 100: SDIO 0 Clock 101: SPI 0 Serial Clock 110: TTC 1 Wave Out 111: UART 1 TxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_40@0XF80007A0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>380</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 40 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_41">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_41</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_41</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007A4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Direction</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 1 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 41 (bank 1) 001: CAN 1 Rx 010: I2C 1 Serial Data 011: reserved 100: SDIO 0 Command 101: SPI 0 MISO 110: TTC 1 Clock Input 111: UART 1 RxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_41@0XF80007A4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>380</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 41 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_42">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_42</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_42</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007A8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Stop</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 42 (bank 1) 001: CAN 0 Rx 010: I2C0 Serial Clock 011: reserved 100: SDIO 0 IO Bit 0 101: SPI 0 Data Bit 0 110: TTC 0 Wave Out 111: UART 0 RxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_42@0XF80007A8</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>380</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 42 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_43">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_43</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_43</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007AC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Next</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 1 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 43 (bank 1) 001: CAN 0 Tx 010: I2C 0 Serial Data 011: reserved 100: SDIO 0 IO Bit 1 101: SPI 0 Slave Select 1 110: TTC 0 Clock Intput 111: UART 0 TxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_43@0XF80007AC</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>380</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 43 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_44">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_44</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_44</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007B0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Data Bit 0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 44 (bank 1) 001: CAN 1 Tx 010: I2C Serial Clock 011: reserved 100 SDIO 0 IO Bit 2 101: SPI 0 Slave Select 2 110: reserved 111: UART 1 TxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_44@0XF80007B0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>380</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 44 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_45">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_45</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_45</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007B4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Data Bit 1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 1 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 45 (bank 1) 001: CAN 1 Rx 010: I2C 1 Serial Data 011: reserved 100: SDIO 0 IO Bit 3 101: SPI 0 Data Bit 3 110: reserved 111: UART 1 RxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_45@0XF80007B4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>380</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 45 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_46">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_46</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_46</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007B8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Data Bit 2</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 46 (bank 1) 001: CAN 0 Rx 010: I2C 0 Serial Clock 011: PJTAG TDI 100: SDIO 1 IO Bit 0 101: SPI 1 MOSI 110: reserved 111: UART 0 RxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_46@0XF80007B8</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1200</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 46 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_47">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_47</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_47</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007BC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_47@0XF80007BC</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f01</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>201</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 47 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_48">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_48</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_48</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007C0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Clock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 48 (bank 1) 001: CAN 1 Tx 010: I2C 1 Serial Clock 011: PJTAG TCK 100: SDIO 1 Clock 101: SPI 1 Serial Clock 110: reserved 111: UART 1 TxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_48@0XF80007C0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2e0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 48 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_49">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_49</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_49</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007C4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Data Bit 5</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 1 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 49 (bank 1) 001: CAN 1 Rx 010: I2C Serial Data 011: PJTAG TMS 100: SDIO 1 IO Bit 1 101: SPI 1 Select 0 110: reserved 111: UART 1 RxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_49@0XF80007C4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2e1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 49 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_50">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_50</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_50</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007C8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Data Bit 6</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 50 (bank 1) 001: Can 0 Rx 010: I2C 0 Serial Clock 011: SWDT Clock Input 100: SDIO 1 IO Bit 2 101: SPI 1 Slave Select 1 110: reserved 111: UART 0 RxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_50@0XF80007C8</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 50 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_51">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_51</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_51</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007CC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Data Bit 7</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 1 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 51 (bank 1) 001: CAN 0 Tx 010: I2C 0 Serial Data 011: SWDT Reset Output 100: SDIO 1 IO Bit 3 101: SPI 1 Slave Select 1 110: reserved 111: UART 0 TxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_51@0XF80007CC</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 51 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_52">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_52</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_52</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007D0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 0 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 52 (bank 1) 001: CAN 1 Tx 010: I2C 1 Serial Clock 011: SWDT Clock Input 100: MDIO 0 Clock 101: MDIO 1 Clock 110: reserved 111: UART 1 TxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_52@0XF80007D0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 52 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_53">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_53</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_53</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007D4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[TRI_ENABLE]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0: Level 1 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0: Level 2 Mux 1: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 1 Power Control output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 000: GPIO 53 (bank 1) 001: CAN 1 Rx 010: I2C 1 Serial Data 011: SWDT Reset Output 100: MDIO 0 Data 101: MDIO 1 Data 110: reserved 111: UART 1 RxD</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[Speed]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[IO_Type]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[PULL_UP]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operates the same as MIO_PIN_00[DisableRcvr]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_53@0XF80007D4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Pin 53 Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="SD0_WP_CD_SEL">Register (<A href=#mod___slcr> slcr </A>)SD0_WP_CD_SEL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SD0_WP_CD_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000830</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SDIO0_WP_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>37</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>37</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SDIO 0 WP Select. Values 53:0 select MIO input (any pin except 7 and 8) Values 63:54 select EMIO input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SDIO0_CD_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2f0000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SDIO 0 CD Select. Values 53:0 select MIO input (any pin except bits 7 and 8) Values 63:54 select EMIO input</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SD0_WP_CD_SEL@0XF8000830</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f003f</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2f0037</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SDIO 0 WP CD select</B> -</TD> -</TR> -</TABLE> -<P> -<H1>LOCK IT BACK</H1> -<H2><a name="SLCR_LOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_LOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_LOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When write data contains the lock key value of 0x767B, the write protection mode is enabled. All registers defined in SLCR are write protected until unlocked again through the SLCR_UNLOCK register. A read of this register returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_LOCK@0XF8000004</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -</TABLE> -<P> -<H2><a name="ps7_peripherals_init_data_2_0">ps7_peripherals_init_data_2_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_UNLOCK"> -SLCR_UNLOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DATA0"> -DDRIOB_DATA0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B48</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Config for Data 15:0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DATA1"> -DDRIOB_DATA1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B4C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Config for Data 31:16</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DIFF0"> -DDRIOB_DIFF0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B50</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Config for DQS 1:0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DIFF1"> -DDRIOB_DIFF1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B54</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR IOB Config for DQS 3:2</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_LOCK"> -SLCR_LOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#Baud_rate_divider_reg0"> -Baud_rate_divider_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0001034</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>baud rate divider register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#Baud_rate_gen_reg0"> -Baud_rate_gen_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0001018</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Baud rate divider register.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#Control_reg0"> -Control_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0001000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART Control register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#mode_reg0"> -mode_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0001004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART Mode register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#Baud_rate_divider_reg0"> -Baud_rate_divider_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0000034</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>baud rate divider register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#Baud_rate_gen_reg0"> -Baud_rate_gen_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0000018</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Baud rate divider register.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#Control_reg0"> -Control_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART Control register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#mode_reg0"> -mode_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART Mode register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#Config_reg"> -Config_reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000D000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SPI configuration register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CTRL"> -CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8007000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Control Register : This register defines basic control registers. Some of the register bits can be locked by control bits in the LOCK Register 0x004.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DIRM_1"> -DIRM_1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A244</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Direction mode (GPIO Bank1, MIO)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MASK_DATA_1_LSW"> -MASK_DATA_1_LSW -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Maskable Output Data (GPIO Bank1, MIO, Lower 16bits)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#OEN_1"> -OEN_1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A248</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Output enable (GPIO Bank1, MIO)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MASK_DATA_1_LSW"> -MASK_DATA_1_LSW -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Maskable Output Data (GPIO Bank1, MIO, Lower 16bits)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MASK_DATA_1_LSW"> -MASK_DATA_1_LSW -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Maskable Output Data (GPIO Bank1, MIO, Lower 16bits)</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ps7_peripherals_init_data_2_0">ps7_peripherals_init_data_2_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<H1>SLCR SETTINGS</H1> -<H2><a name="SLCR_UNLOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_UNLOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_UNLOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UNLOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When write data contains the unlock key value of 0xDF0D, the write protection mode is disabled. All registers defined in SLCR are writeable until locked again through the SLCR_LOCK register. A read of this register returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_UNLOCK@0XF8000008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -</TABLE> -<P> -<H1>DDR TERM/IBUF_DISABLE_MODE SETTINGS</H1> -<H2><a name="DDRIOB_DATA0">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DATA0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DATA0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B48</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use dynamic_dci_ts to control dci 0: termination enabled 1: use 'dynamic_dci_ts' control termination</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DATA0@0XF8000B48</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>180</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>180</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Config for Data 15:0</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DATA1">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DATA1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DATA1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B4C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use dynamic_dci_ts to control dci 0: termination enabled 1: use 'dynamic_dci_ts' control termination</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DATA1@0XF8000B4C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>180</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>180</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Config for Data 31:16</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DIFF0">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DIFF0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DIFF0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B50</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use dynamic_dci_ts to control dci 0: termination enabled 1: use 'dynamic_dci_ts' control termination</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DIFF0@0XF8000B50</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>180</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>180</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Config for DQS 1:0</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DIFF1">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DIFF1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DIFF1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B54</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use dynamic_dci_ts to control dci 0: termination enabled 1: use 'dynamic_dci_ts' control termination</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DIFF1@0XF8000B54</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>180</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>180</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR IOB Config for DQS 3:2</B> -</TD> -</TR> -</TABLE> -<P> -<H1>LOCK IT BACK</H1> -<H2><a name="SLCR_LOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_LOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_LOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When write data contains the lock key value of 0x767B, the write protection mode is enabled. All registers defined in SLCR are write protected until unlocked again through the SLCR_UNLOCK register. A read of this register returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_LOCK@0XF8000004</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -<H1>SRAM/NOR SET OPMODE</H1> -<H1>UART REGISTERS</H1> -<H2><a name="Baud_rate_divider_reg0">Register (<A href=#mod___slcr> slcr </A>)Baud_rate_divider_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Baud_rate_divider_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0001034</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>BDIV</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Baud rate divider value: 0 - 3: ignored 4 - 255: Baud rate</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>Baud_rate_divider_reg0@0XE0001034</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>6</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>baud rate divider register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="Baud_rate_gen_reg0">Register (<A href=#mod___slcr> slcr </A>)Baud_rate_gen_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Baud_rate_gen_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0001018</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CD</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Baud Rate Clock Divisor Value: 0: Disables baud_sample 1: Clock divisor bypass 2 - 65535: baud_sample value</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>Baud_rate_gen_reg0@0XE0001018</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>7c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Baud rate divider register.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="Control_reg0">Register (<A href=#mod___slcr> slcr </A>)Control_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Control_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0001000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>STPBRK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Stop transmitter break: 0: start break transmission, 1: stop break transmission.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>STTBRK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Start transmitter break: 0: 1: start to transmit a break. Can only be set if STPBRK (Stop transmitter break) is not high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RSTTO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Restart receiver timeout counter: 0: receiver timeout counter disabled, 1: receiver timeout counter is restarted.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TXDIS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Transmit disable: 0: enable transmitter, 0: disable transmitter</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TXEN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Transmit enable: 0: disable transmitter, 1: enable transmitter, provided the TXDIS field is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RXDIS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Receive disable: 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RXEN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Receive enable: 0: disable, 1: enable. When set to one, the receiver logic is enabled, provided the RXDIS field is set to zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TXRES</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Software reset for Tx data path: 0: 1: transmitter logic is reset and all pending transmitter data is discarded self clear</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RXRES</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Software reset for Rx data path: 0: 1: receiver logic is reset and all pending receiver data is discarded self clear</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>Control_reg0@0XE0001000</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>17</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>UART Control register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="mode_reg0">Register (<A href=#mod___slcr> slcr </A>)mode_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>mode_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0001004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IRMODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable IrDA mode: 0: Default UART mode 1: Enable IrDA mode</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UCLKEN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>External uart_clk source select: 0: APB clock, pclk 1: a user-defined clock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHMODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>300</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Channel mode: 00: normal 01: automatic cho 10: local loopback 11: remote loopback</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>NBSTOP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of stop bits: 00: 1 stop bit 01: 1.5 stop bits 10: 2 stop bits 11: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PAR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>38</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Parity type select: 000: even parity 001: odd parity 010: forced to 0 parity (space) 011: forced to 1 parity (mark) 1xx: no parity</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Character length select: 11: 6 bits 10: 7 bits 0x: 8 bits</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clock source select: 0: clock source is uart_clk 1: clock source is uart_clk/8</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>mode_reg0@0XE0001004</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>UART Mode register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="Baud_rate_divider_reg0">Register (<A href=#mod___slcr> slcr </A>)Baud_rate_divider_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Baud_rate_divider_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0000034</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>BDIV</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Baud rate divider value: 0 - 3: ignored 4 - 255: Baud rate</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>Baud_rate_divider_reg0@0XE0000034</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>6</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>baud rate divider register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="Baud_rate_gen_reg0">Register (<A href=#mod___slcr> slcr </A>)Baud_rate_gen_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Baud_rate_gen_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0000018</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CD</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Baud Rate Clock Divisor Value: 0: Disables baud_sample 1: Clock divisor bypass 2 - 65535: baud_sample value</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>Baud_rate_gen_reg0@0XE0000018</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>7c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Baud rate divider register.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="Control_reg0">Register (<A href=#mod___slcr> slcr </A>)Control_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Control_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>STPBRK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Stop transmitter break: 0: start break transmission, 1: stop break transmission.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>STTBRK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Start transmitter break: 0: 1: start to transmit a break. Can only be set if STPBRK (Stop transmitter break) is not high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RSTTO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Restart receiver timeout counter: 0: receiver timeout counter disabled, 1: receiver timeout counter is restarted.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TXDIS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Transmit disable: 0: enable transmitter, 0: disable transmitter</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TXEN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Transmit enable: 0: disable transmitter, 1: enable transmitter, provided the TXDIS field is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RXDIS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Receive disable: 0: disable, 1: enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RXEN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Receive enable: 0: disable, 1: enable. When set to one, the receiver logic is enabled, provided the RXDIS field is set to zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TXRES</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Software reset for Tx data path: 0: 1: transmitter logic is reset and all pending transmitter data is discarded self clear</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RXRES</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Software reset for Rx data path: 0: 1: receiver logic is reset and all pending receiver data is discarded self clear</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>Control_reg0@0XE0000000</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>17</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>UART Control register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="mode_reg0">Register (<A href=#mod___slcr> slcr </A>)mode_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>mode_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IRMODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable IrDA mode: 0: Default UART mode 1: Enable IrDA mode</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UCLKEN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>External uart_clk source select: 0: APB clock, pclk 1: a user-defined clock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHMODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>300</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Channel mode: 00: normal 01: automatic cho 10: local loopback 11: remote loopback</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>NBSTOP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of stop bits: 00: 1 stop bit 01: 1.5 stop bits 10: 2 stop bits 11: reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PAR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>38</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Parity type select: 000: even parity 001: odd parity 010: forced to 0 parity (space) 011: forced to 1 parity (mark) 1xx: no parity</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Character length select: 11: 6 bits 10: 7 bits 0x: 8 bits</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clock source select: 0: clock source is uart_clk 1: clock source is uart_clk/8</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>mode_reg0@0XE0000004</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>UART Mode register</B> -</TD> -</TR> -</TABLE> -<P> -<H1>QSPI REGISTERS</H1> -<H2><a name="Config_reg">Register (<A href=#mod___slcr> slcr </A>)Config_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Config_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000D000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Holdb_dr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Holdb and WPn pins are driven in normal/fast read or dual output/io read by the controller, if set, else external pull-high is required. Both pins are always driven by the controller in quad mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>Config_reg@0XE000D000</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>80000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SPI configuration register</B> -</TD> -</TR> -</TABLE> -<P> -<H1>PL POWER ON RESET REGISTERS</H1> -<H2><a name="CTRL">Register (<A href=#mod___slcr> slcr </A>)CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8007000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PCFG_POR_CNT_4K</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>29:29</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This is to indicate to the FPGA fabric what timer to use 0 - use 64K timer 1 - use 4K timer</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CTRL@0XF8007000</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>20000000</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Control Register : This register defines basic control registers. Some of the register bits can be locked by control bits in the LOCK Register 0x004.</B> -</TD> -</TR> -</TABLE> -<P> -<H1>SMC TIMING CALCULATION REGISTER UPDATE</H1> -<H1>NAND SET CYCLE</H1> -<H1>OPMODE</H1> -<H1>DIRECT COMMAND</H1> -<H1>SRAM/NOR CS0 SET CYCLE</H1> -<H1>DIRECT COMMAND</H1> -<H1>NOR CS0 BASE ADDRESS</H1> -<H1>SRAM/NOR CS1 SET CYCLE</H1> -<H1>DIRECT COMMAND</H1> -<H1>NOR CS1 BASE ADDRESS</H1> -<H1>USB RESET</H1> -<H1>USB0 RESET</H1> -<H1>DIR MODE BANK 0</H1> -<H1>DIR MODE BANK 1</H1> -<H2><a name="DIRM_1">Register (<A href=#mod___slcr> slcr </A>)DIRM_1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIRM_1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A244</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIRECTION_1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3fffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operation is the same as DIRM_0[DIRECTION_0]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DIRM_1@0XE000A244</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>4000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Direction mode (GPIO Bank1, MIO)</B> -</TD> -</TR> -</TABLE> -<P> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H2><a name="MASK_DATA_1_LSW">Register (<A href=#mod___slcr> slcr </A>)MASK_DATA_1_LSW</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MASK_DATA_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MASK_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>bfff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>bfff0000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operation is the same as MASK_DATA_0_LSW[MASK_0_LSW]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DATA_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operation is the same as MASK_DATA_0_LSW[DATA_0_LSW]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MASK_DATA_1_LSW@0XE000A008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>bfff4000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Maskable Output Data (GPIO Bank1, MIO, Lower 16bits)</B> -</TD> -</TR> -</TABLE> -<P> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>OUTPUT ENABLE BANK 0</H1> -<H1>OUTPUT ENABLE BANK 1</H1> -<H2><a name="OEN_1">Register (<A href=#mod___slcr> slcr </A>)OEN_1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OEN_1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A248</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OP_ENABLE_1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3fffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operation is the same as OEN_0[OP_ENABLE_0]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>OEN_1@0XE000A248</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>4000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Output enable (GPIO Bank1, MIO)</B> -</TD> -</TR> -</TABLE> -<P> -<H1>MASK_DATA_0_LSW LOW BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW LOW BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW LOW BANK [47:32]</H1> -<H2><a name="MASK_DATA_1_LSW">Register (<A href=#mod___slcr> slcr </A>)MASK_DATA_1_LSW</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MASK_DATA_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MASK_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>bfff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>bfff0000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operation is the same as MASK_DATA_0_LSW[MASK_0_LSW]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DATA_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operation is the same as MASK_DATA_0_LSW[DATA_0_LSW]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MASK_DATA_1_LSW@0XE000A008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>bfff0000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Maskable Output Data (GPIO Bank1, MIO, Lower 16bits)</B> -</TD> -</TR> -</TABLE> -<P> -<H1>MASK_DATA_1_MSW LOW BANK [53:48]</H1> -<H1>ADD 1 MS DELAY</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H2><a name="MASK_DATA_1_LSW">Register (<A href=#mod___slcr> slcr </A>)MASK_DATA_1_LSW</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MASK_DATA_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MASK_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>bfff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>bfff0000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operation is the same as MASK_DATA_0_LSW[MASK_0_LSW]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DATA_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Operation is the same as MASK_DATA_0_LSW[DATA_0_LSW]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MASK_DATA_1_LSW@0XE000A008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>bfff4000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Maskable Output Data (GPIO Bank1, MIO, Lower 16bits)</B> -</TD> -</TR> -</TABLE> -<P> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>USB1 RESET</H1> -<H1>DIR MODE BANK 0</H1> -<H1>DIR MODE BANK 1</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>OUTPUT ENABLE BANK 0</H1> -<H1>OUTPUT ENABLE BANK 1</H1> -<H1>MASK_DATA_0_LSW LOW BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW LOW BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW LOW BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW LOW BANK [53:48]</H1> -<H1>ADD 1 MS DELAY</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>ENET RESET</H1> -<H1>ENET0 RESET</H1> -<H1>DIR MODE BANK 0</H1> -<H1>DIR MODE BANK 1</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>OUTPUT ENABLE BANK 0</H1> -<H1>OUTPUT ENABLE BANK 1</H1> -<H1>MASK_DATA_0_LSW LOW BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW LOW BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW LOW BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW LOW BANK [53:48]</H1> -<H1>ADD 1 MS DELAY</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>ENET1 RESET</H1> -<H1>DIR MODE BANK 0</H1> -<H1>DIR MODE BANK 1</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>OUTPUT ENABLE BANK 0</H1> -<H1>OUTPUT ENABLE BANK 1</H1> -<H1>MASK_DATA_0_LSW LOW BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW LOW BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW LOW BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW LOW BANK [53:48]</H1> -<H1>ADD 1 MS DELAY</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>I2C RESET</H1> -<H1>I2C0 RESET</H1> -<H1>DIR MODE GPIO BANK0</H1> -<H1>DIR MODE GPIO BANK1</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>OUTPUT ENABLE</H1> -<H1>OUTPUT ENABLE</H1> -<H1>MASK_DATA_0_LSW LOW BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW LOW BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW LOW BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW LOW BANK [53:48]</H1> -<H1>ADD 1 MS DELAY</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>I2C1 RESET</H1> -<H1>DIR MODE GPIO BANK0</H1> -<H1>DIR MODE GPIO BANK1</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>OUTPUT ENABLE</H1> -<H1>OUTPUT ENABLE</H1> -<H1>MASK_DATA_0_LSW LOW BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW LOW BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW LOW BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW LOW BANK [53:48]</H1> -<H1>ADD 1 MS DELAY</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>NOR CHIP SELECT</H1> -<H1>DIR MODE BANK 0</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>OUTPUT ENABLE BANK 0</H1> -</TABLE> -<P> -<H2><a name="ps7_post_config_2_0">ps7_post_config_2_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_UNLOCK"> -SLCR_UNLOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#LVL_SHFTR_EN"> -LVL_SHFTR_EN -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000900</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level Shifters Enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#FPGA_RST_CTRL"> -FPGA_RST_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000240</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FPGA Software Reset Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_LOCK"> -SLCR_LOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ps7_post_config_2_0">ps7_post_config_2_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<H1>SLCR SETTINGS</H1> -<H2><a name="SLCR_UNLOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_UNLOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_UNLOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UNLOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When write data contains the unlock key value of 0xDF0D, the write protection mode is disabled. All registers defined in SLCR are writeable until locked again through the SLCR_LOCK register. A read of this register returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_UNLOCK@0XF8000008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -</TABLE> -<P> -<H1>ENABLING LEVEL SHIFTER</H1> -<H2><a name="LVL_SHFTR_EN">Register (<A href=#mod___slcr> slcr </A>)LVL_SHFTR_EN</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LVL_SHFTR_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000900</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>USER_INP_ICT_EN_0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable level shifters for PSS user inputs to FPGA in FPGA tile 0, drives slcr_fpga_if_ctrl0[1:0].</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>USER_INP_ICT_EN_1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable level shifters for PSS user inputs to FPGA in FPGA tile 1, drives slcr_fpga_if_ctrl1[1:0].</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>LVL_SHFTR_EN@0XF8000900</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>f</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Level Shifters Enable</B> -</TD> -</TR> -</TABLE> -<P> -<H1>FPGA RESETS TO 0</H1> -<H2><a name="FPGA_RST_CTRL">Register (<A href=#mod___slcr> slcr </A>)FPGA_RST_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_RST_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000240</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:25</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fe000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Writes are ignored, read data is zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_ACP_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>24:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FPGA ACP port soft reset: 0: No reset 1: ACP AXI interface reset output asserted</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_AXDS3_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:23</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXDS3AXI interface soft reset. On assertion of this reset, the AXDS3AXI interface reset output will be asserted. 0: No reset 1: AXDS3AXI interface reset output asserted</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_AXDS2_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>22:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXDS2 AXI interface soft reset. On assertion of this reset, the AXDS2 AXI interface reset output will be asserted. 0: No reset 1: AXDS2 AXI interface reset output asserted</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_AXDS1_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:21</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXDS1 AXI interface soft reset. On assertion of this reset, the AXDS1 AXI interface reset output will be asserted. 0: No reset 1: AXDS1 AXI interface reset output asserted</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_AXDS0_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXDS0 AXI interface soft reset. On assertion of this reset, the AXDS0 AXI interface reset output will be asserted. 0: No reset 1: AXDS0 AXI interface reset output asserted</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Writes are ignored, read data is zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FSSW1_FPGA_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>General purpose FPGA slave interface 1 soft reset. On assertion of this reset, the FPGA slave interface 1 reset will be asserted. 0: No reset 1: FPGA slave interface 1 reset is asserted</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FSSW0_FPGA_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>General purpose FPGA slave interface 0 soft reset. On assertion of this reset, the FPGA slave interface 0 reset will be asserted. 0: No reset 1: FPGA slave interface 0 reset is asserted</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Writes are ignored, read data is zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_FMSW1_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>General purpose FPGA master interface: 1: soft reset. On assertion of this reset, the FPGA master interface 1 reset will be asserted. 0: No reset 1: FPGA master interface 1 reset is asserted</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_FMSW0_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>General purpose FPGA master interface 0 soft reset. On assertion of this reset, the FPGA master interface 0 reset will be asserted. 0: No reset 1: FPGA master interface 0 reset is asserted.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_DMA3_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FPGA DMA 3 peripheral request soft reset. On assertion of this reset, the FPGA DMA 3 peripheral request reset output will be asserted. 0: No reset 1: FPGA DMA 3 peripheral request reset output asserted</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_DMA2_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FPGA DMA 2 peripheral request soft reset. On assertion of this reset, the FPGA DMA 2 peripheral request reset output will be asserted. 0: No reset 1: FPGA DMA 2 peripheral request reset output asserted</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_DMA1_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FPGA DMA 1 peripheral request soft reset. On assertion of this reset, the FPGA DMA 1 peripheral request reset output will be asserted. 0: No reset 1: FPGA DMA 1 peripheral request reset output asserted</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_DMA0_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FPGA DMA 0 peripheral request soft reset. On assertion of this reset, the FPGA DMA 0 peripheral request reset output will be asserted. 0: No reset 1: FPGA DMA 0 peripheral request reset output asserted</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Writes are ignored, read data is zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA3_OUT_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FPGA3software reset. On assertion of this reset, the FPGA 3 top level reset output will be asserted. 0: No reset 1: FPGA 3 top level reset output asserted</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA2_OUT_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FPGA2 software reset. On assertion of this reset, the FPGA 2 top level reset output will be asserted. 0: No reset 1: FPGA 2 top level reset output asserted</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA1_OUT_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FPGA1 software reset. On assertion of this reset, the FPGA 1 top level reset output will be asserted. 0: No reset 1: FPGA 1 top level reset output asserted</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA0_OUT_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FPGA0 software reset. On assertion of this reset, the FPGA 0 top level reset output will be asserted. 0: No reset 1: FPGA 0 top level reset output asserted</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>FPGA_RST_CTRL@0XF8000240</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>FPGA Software Reset Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>AFI REGISTERS</H1> -<H1>AFI0 REGISTERS</H1> -<H1>AFI1 REGISTERS</H1> -<H1>AFI2 REGISTERS</H1> -<H1>AFI3 REGISTERS</H1> -<H1>LOCK IT BACK</H1> -<H2><a name="SLCR_LOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_LOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_LOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When write data contains the lock key value of 0x767B, the write protection mode is enabled. All registers defined in SLCR are write protected until unlocked again through the SLCR_UNLOCK register. A read of this register returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_LOCK@0XF8000004</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -</TABLE> -<P> -<H2><a name="ps7_debug_2_0">ps7_debug_2_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#LAR"> -LAR -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8898FB0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Lock Access Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#LAR"> -LAR -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8899FB0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Lock Access Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#LAR"> -LAR -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8809FB0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Lock Access Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ps7_debug_2_0">ps7_debug_2_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<H1>CROSS TRIGGER CONFIGURATIONS</H1> -<H1>UNLOCKING CTI REGISTERS</H1> -<H2><a name="LAR">Register (<A href=#mod___slcr> slcr </A>)LAR</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LAR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8898FB0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c5acce55</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c5acce55</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write Access Code. Write behavior depends on PADDRDBG31 pin: - PADDRDBG31=0 (lower 2GB): After reset (via PRESETDBGn), CTI is locked, i.e., writes to all other registers using lower 2GB addresses are ignored. To unlock, 0xC5ACCE55 must be written this register. After the required registers are written, to lock again, write a value other than 0xC5ACCE55 to this register. - PADDRDBG31=1 (upper 2GB): CTI is unlocked when upper 2GB addresses are used to write to all the registers. However, write to this register is ignored using a upper 2GB address! Note: read from this register always returns 0, regardless of PADDRDBG31.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>LAR@0XF8898FB0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>c5acce55</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Lock Access Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="LAR">Register (<A href=#mod___slcr> slcr </A>)LAR</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LAR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8899FB0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c5acce55</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c5acce55</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write Access Code. Write behavior depends on PADDRDBG31 pin: - PADDRDBG31=0 (lower 2GB): After reset (via PRESETDBGn), CTI is locked, i.e., writes to all other registers using lower 2GB addresses are ignored. To unlock, 0xC5ACCE55 must be written this register. After the required registers are written, to lock again, write a value other than 0xC5ACCE55 to this register. - PADDRDBG31=1 (upper 2GB): CTI is unlocked when upper 2GB addresses are used to write to all the registers. However, write to this register is ignored using a upper 2GB address! Note: read from this register always returns 0, regardless of PADDRDBG31.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>LAR@0XF8899FB0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>c5acce55</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Lock Access Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="LAR">Register (<A href=#mod___slcr> slcr </A>)LAR</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LAR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8809FB0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c5acce55</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c5acce55</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write Access Code. Write behavior depends on PADDRDBG31 pin: - PADDRDBG31=0 (lower 2GB): After reset (via PRESETDBGn), CTI is locked, i.e., writes to all other registers using lower 2GB addresses are ignored. To unlock, 0xC5ACCE55 must be written this register. After the required registers are written, to lock again, write a value other than 0xC5ACCE55 to this register. - PADDRDBG31=1 (upper 2GB): CTI is unlocked when upper 2GB addresses are used to write to all the registers. However, write to this register is ignored using a upper 2GB address! Note: read from this register always returns 0, regardless of PADDRDBG31.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>LAR@0XF8809FB0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>c5acce55</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Lock Access Register</B> -</TD> -</TR> -</TABLE> -<P> -<H1>ENABLING CTI MODULES AND CHANNELS</H1> -<H1>MAPPING CPU0, CPU1 AND FTM EVENTS TO CTM CHANNELS</H1> -</TABLE> -<P> -</body> -</head> -</body> -</html> -<H2><a name="ps7_pll_init_data_1_0">ps7_pll_init_data_1_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_UNLOCK"> -SLCR_UNLOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ARM_PLL_CFG"> -ARM_PLL_CFG -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000110</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL Configuration</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ARM_PLL_CTRL"> -ARM_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ARM_PLL_CTRL"> -ARM_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ARM_PLL_CTRL"> -ARM_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ARM_PLL_CTRL"> -ARM_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ARM_PLL_CTRL"> -ARM_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ARM_CLK_CTRL"> -ARM_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000120</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>CORTEX A9 Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDR_PLL_CFG"> -DDR_PLL_CFG -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000114</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR PLL Configuration</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDR_PLL_CTRL"> -DDR_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDR_PLL_CTRL"> -DDR_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDR_PLL_CTRL"> -DDR_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDR_PLL_CTRL"> -DDR_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDR_PLL_CTRL"> -DDR_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDR_CLK_CTRL"> -DDR_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000124</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#IO_PLL_CFG"> -IO_PLL_CFG -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000118</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>IO PLL Configuration</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#IO_PLL_CTRL"> -IO_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>IO PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#IO_PLL_CTRL"> -IO_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>IO PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#IO_PLL_CTRL"> -IO_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>IO PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#IO_PLL_CTRL"> -IO_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>IO PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#IO_PLL_CTRL"> -IO_PLL_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>IO PLL Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_LOCK"> -SLCR_LOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ps7_pll_init_data_1_0">ps7_pll_init_data_1_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<H1>SLCR SETTINGS</H1> -<H2><a name="SLCR_UNLOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_UNLOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_UNLOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UNLOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When write data contains the unlock key value of 0xDF0D, the write protection mode is disabled. All registers defined in SLCR are writeable until locked again through the SLCR_LOCK register. A read of this register always returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_UNLOCK@0XF8000008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -</TABLE> -<P> -<H1>PLL SLCR REGISTERS</H1> -<H1>ARM PLL INIT</H1> -<H2><a name="ARM_PLL_CFG">Register (<A href=#mod___slcr> slcr </A>)ARM_PLL_CFG</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ARM_PLL_CFG</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000110</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RES</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drives the PLL_RES[3:0] input of the PLL to set the PLL loop filter resistor control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_CP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drives the PLL_CP[3:0] input of the PLL to set the PLL charge pump control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LOCK_CNT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>177</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>177000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drives the LOCK_CNT[9:0] input of the PLL to set the number of clock cycles the PLL needs to have clkref and clkfb aligned withth a certain window before syaing locked.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ARM_PLL_CFG@0XF8000110</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffff0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1772c0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ARM PLL Configuration</B> -</TD> -</TR> -</TABLE> -<P> -<H1>UPDATE FB_DIV</H1> -<H2><a name="ARM_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)ARM_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ARM_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_FDIV</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1a</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1a000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the feedback divisor for the PLL. NOTE: Before changing this value the PLL must first be bypassed and then put into powerdown or reset state.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ARM_PLL_CTRL@0XF8000100</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7f000</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1a000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ARM PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>BY PASS PLL</H1> -<H2><a name="ARM_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)ARM_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ARM_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_BYPASS_FORCE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Overides control of the PLL bypass function within the clock controller to force into bypass state. 0 - PLL not forced to be bypassed (may still be bypassed through bootstrap pin). 1 - PLL forced to be bypassed.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ARM_PLL_CTRL@0XF8000100</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ARM PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>ASSERT RESET</H1> -<H2><a name="ARM_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)ARM_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ARM_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drives the RESET input of the PLL. 0 - PLL out of reset; 1 - PLL held in reset. Remember that after reset, the user should program the PLLs and ensure that the serviced bit below is asserted before using.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ARM_PLL_CTRL@0XF8000100</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ARM PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>DEASSERT RESET</H1> -<H2><a name="ARM_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)ARM_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ARM_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drives the RESET input of the PLL. 0 - PLL out of reset; 1 - PLL held in reset. Remember that after reset, the user should program the PLLs and ensure that the serviced bit below is asserted before using.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ARM_PLL_CTRL@0XF8000100</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ARM PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>CHECK PLL STATUS</H1> -<H2><a name="PLL_STATUS">Register (<A href=#mod___slcr> slcr </A>)PLL_STATUS</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_STATUS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800010C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ARM_PLL_LOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ARM PLL lock status. 0 - ARM PLL out of lock. 1 - ARM PLL in lock. Note: Reset condition is actually 0, but will always be 1 by the time this register can be read if PLL's are being used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>PLL_STATUS@0XF800010C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>tobe</B> -</TD> -</TR> -</TABLE> -<P> -<H1>REMOVE PLL BY PASS</H1> -<H2><a name="ARM_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)ARM_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ARM_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_BYPASS_FORCE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Overides control of the PLL bypass function within the clock controller to force into bypass state. 0 - PLL not forced to be bypassed (may still be bypassed through bootstrap pin). 1 - PLL forced to be bypassed.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ARM_PLL_CTRL@0XF8000100</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ARM PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ARM_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)ARM_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ARM_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000120</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRCSEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the source used to generate the clock. 0x - Source for generated clock is CPU PLL. 10 - Source for generated clock is DDR divided clock. 11 - Source for generated clock is IO PLL</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the divisor used to divide the source clock to generate the required generated clock frequency.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CPU_6OR4XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>24:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CPU_3OR2XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:25</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CPU_2XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:26</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CPU_PERI_CLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>28:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ARM_CLK_CTRL@0XF8000120</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1f003f30</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1f000200</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>CORTEX A9 Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>DDR PLL INIT</H1> -<H2><a name="DDR_PLL_CFG">Register (<A href=#mod___slcr> slcr </A>)DDR_PLL_CFG</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_PLL_CFG</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000114</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RES</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drives the PLL_RES[3:0] input of the PLL to set the PLL loop filter resistor control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_CP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drives the PLL_CP[3:0] input of the PLL to set the PLL charge pump control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LOCK_CNT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1db</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1db000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drives the LOCK_CNT[9:0] input of the PLL to set the number of clock cycles the PLL needs to have clkref and clkfb aligned withth a certain window before syaing locked.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDR_PLL_CFG@0XF8000114</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffff0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1db2c0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR PLL Configuration</B> -</TD> -</TR> -</TABLE> -<P> -<H1>UPDATE FB_DIV</H1> -<H2><a name="DDR_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDR_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_FDIV</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>15</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the feedback divisor for the PLL. NOTE: Before changing this value the PLL must first be bypassed and then put into powerdown or reset state.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDR_PLL_CTRL@0XF8000104</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7f000</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>15000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>BY PASS PLL</H1> -<H2><a name="DDR_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDR_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_BYPASS_FORCE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Overides control of the PLL bypass function within the clock controller to force into bypass state. 0 - PLL not forced to be bypassed (may still be bypassed through bootstrap pin). 1 - PLL forced to be bypassed</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDR_PLL_CTRL@0XF8000104</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>ASSERT RESET</H1> -<H2><a name="DDR_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDR_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drives the RESET input of the PLL. 0 - PLL out of reset. 1 - PLL held in reset. Remember that after reset, the user should program the PLLs and ensure that the serviced bit below is asserted before using.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDR_PLL_CTRL@0XF8000104</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>DEASSERT RESET</H1> -<H2><a name="DDR_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDR_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drives the RESET input of the PLL. 0 - PLL out of reset. 1 - PLL held in reset. Remember that after reset, the user should program the PLLs and ensure that the serviced bit below is asserted before using.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDR_PLL_CTRL@0XF8000104</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>CHECK PLL STATUS</H1> -<H2><a name="PLL_STATUS">Register (<A href=#mod___slcr> slcr </A>)PLL_STATUS</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_STATUS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800010C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_PLL_LOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR PLL lock status. 0 - DDR PLL out of lock. 1 - DDR PLL in lock. Note: Reset condition is actually 0, but will always be 1 by the time this register can be read if PLL's are being used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>PLL_STATUS@0XF800010C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>tobe</B> -</TD> -</TR> -</TABLE> -<P> -<H1>REMOVE PLL BY PASS</H1> -<H2><a name="DDR_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDR_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000104</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_BYPASS_FORCE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Overides control of the PLL bypass function within the clock controller to force into bypass state. 0 - PLL not forced to be bypassed (may still be bypassed through bootstrap pin). 1 - PLL forced to be bypassed</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDR_PLL_CTRL@0XF8000104</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDR_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDR_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000124</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_3XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_2XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_3XCLK_DIVISOR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Divisor value for the ddr_3xclk</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDR_2XCLK_DIVISOR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:26</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fc000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Divisor value for the ddr_2xclk (does not have to be 2/3 speed of ddr_3xclk)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDR_CLK_CTRL@0XF8000124</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff00003</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>c200003</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDR Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>IO PLL INIT</H1> -<H2><a name="IO_PLL_CFG">Register (<A href=#mod___slcr> slcr </A>)IO_PLL_CFG</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_PLL_CFG</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000118</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RES</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drives the PLL_RES[3:0] input of the PLL to set the PLL loop filter resistor control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_CP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drives the PLL_CP[3:0] input of the PLL to set the PLL charge pump control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LOCK_CNT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1f4000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drives the LOCK_CNT[9:0] input of the PLL to set the number of clock cycles the PLL needs to have clkref and clkfb aligned withth a certain window before syaing locked.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>IO_PLL_CFG@0XF8000118</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffff0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1f42c0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>IO PLL Configuration</B> -</TD> -</TR> -</TABLE> -<P> -<H1>UPDATE FB_DIV</H1> -<H2><a name="IO_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)IO_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_FDIV</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>14</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the feedback divisor for the PLL. NOTE: Before changing this value the PLL must first be bypassed and then put into powerdown or reset state.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>IO_PLL_CTRL@0XF8000108</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7f000</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>14000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>IO PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>BY PASS PLL</H1> -<H2><a name="IO_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)IO_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_BYPASS_FORCE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Overides control of the PLL bypass function within the clock controller to force into bypass state. 0 - PLL not forced to be bypassed (may still be bypassed through bootstrap pin). 1 - PLL forced to be bypassed</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>IO_PLL_CTRL@0XF8000108</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>IO PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>ASSERT RESET</H1> -<H2><a name="IO_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)IO_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drives the RESET input of the PLL. 0 - PLL out of reset. 1 - PLL held in reset. Remember that after reset, the user should program the PLLs and ensure that the serviced bit below is asserted before using.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>IO_PLL_CTRL@0XF8000108</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>IO PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>DEASSERT RESET</H1> -<H2><a name="IO_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)IO_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Drives the RESET input of the PLL. 0 - PLL out of reset. 1 - PLL held in reset. Remember that after reset, the user should program the PLLs and ensure that the serviced bit below is asserted before using.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>IO_PLL_CTRL@0XF8000108</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>IO PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>CHECK PLL STATUS</H1> -<H2><a name="PLL_STATUS">Register (<A href=#mod___slcr> slcr </A>)PLL_STATUS</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_STATUS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800010C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_PLL_LOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>IO PLL lock status. 0 - IO PLL out of lock. 1 - IO PLL in lock. Note: Reset condition is actually 0, but will always be 1 by the time this register can be read if PLL's are being used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>PLL_STATUS@0XF800010C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>tobe</B> -</TD> -</TR> -</TABLE> -<P> -<H1>REMOVE PLL BY PASS</H1> -<H2><a name="IO_PLL_CTRL">Register (<A href=#mod___slcr> slcr </A>)IO_PLL_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_PLL_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000108</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PLL_BYPASS_FORCE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Overides control of the PLL bypass function within the clock controller to force into bypass state. 0 - PLL not forced to be bypassed (may still be bypassed through bootstrap pin). 1 - PLL forced to be bypassed</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>IO_PLL_CTRL@0XF8000108</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>IO PLL Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>LOCK IT BACK</H1> -<H2><a name="SLCR_LOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_LOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_LOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When write data contains the lock key value of 0x767B, the write protection mode is enabled. All registers defined in SLCR are write protected until unlocked again through the SLCR_UNLOCK register. A read of this register always returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_LOCK@0XF8000004</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -</TABLE> -<P> -<H2><a name="ps7_clock_init_data_1_0">ps7_clock_init_data_1_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_UNLOCK"> -SLCR_UNLOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DCI_CLK_CTRL"> -DCI_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000128</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI clock control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#GEM0_RCLK_CTRL"> -GEM0_RCLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000138</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Gigabit Ethernet MAC 0 RX Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#GEM0_CLK_CTRL"> -GEM0_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000140</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Gigabit Ethernet MAC 0 Ref Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#LQSPI_CLK_CTRL"> -LQSPI_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800014C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Linear Quad-SPI Reference Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SDIO_CLK_CTRL"> -SDIO_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000150</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SDIO Reference Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#UART_CLK_CTRL"> -UART_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000154</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART Reference Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#PCAP_CLK_CTRL"> -PCAP_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000168</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PCAP 2X Clock Contol</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#FPGA0_CLK_CTRL"> -FPGA0_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000170</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FPGA 0 Output Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CLK_621_TRUE"> -CLK_621_TRUE -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80001C4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>6:2:1 ratio clock, if set</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#APER_CLK_CTRL"> -APER_CLK_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800012C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AMBA Peripheral Clock Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_LOCK"> -SLCR_LOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ps7_clock_init_data_1_0">ps7_clock_init_data_1_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<H1>SLCR SETTINGS</H1> -<H2><a name="SLCR_UNLOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_UNLOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_UNLOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UNLOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When write data contains the unlock key value of 0xDF0D, the write protection mode is disabled. All registers defined in SLCR are writeable until locked again through the SLCR_LOCK register. A read of this register always returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_UNLOCK@0XF8000008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -</TABLE> -<P> -<H1>CLOCK CONTROL SLCR REGISTERS</H1> -<H2><a name="DCI_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)DCI_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000128</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>34</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3400</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the divisor used to divide the source clock to generate the required generated clock frequency.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the divisor used to divide the source clock to generate the required generated clock frequency. Second cascade divider</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DCI_CLK_CTRL@0XF8000128</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f03f01</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>203401</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DCI clock control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="GEM0_RCLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)GEM0_RCLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GEM0_RCLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000138</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRCSEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the source used to generate the clock. 0 - Source for generated clock is GEM 0 MIO RX clock. 1 - Source for generated clock is GEM 0 FMIO RX clock.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>GEM0_RCLK_CTRL@0XF8000138</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>11</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Gigabit Ethernet MAC 0 RX Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="GEM0_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)GEM0_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GEM0_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000140</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRCSEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the source used to generate the clock. 1xx - Source for generated clock is Ethernet 0 FMIO clock. 00x - Source for generated clock is IO PLL. 010 - Source for generated clock is ARM PLL. 011 - Source for generated clock is DDR PLL</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the divisor used to divide the source clock to generate the required generated clock frequency. First cascade divider</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the divisor used to divide the source clock to generate the required generated clock frequency. Second cascade divider</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>GEM0_CLK_CTRL@0XF8000140</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f03f71</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>100801</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Gigabit Ethernet MAC 0 Ref Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="LQSPI_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)LQSPI_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LQSPI_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800014C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRCSEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the source used to generate the clock. 0x - Source for generated clock is IO PLL. 10 - Source for generated clock is ARM PLL. 11 - Source for generated clock is DDR PLL.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>500</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the divisor used to divide the source clock to generate the required generated clock frequency.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>LQSPI_CLK_CTRL@0XF800014C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f31</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>501</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Linear Quad-SPI Reference Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="SDIO_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)SDIO_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SDIO_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000150</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SDIO 0 Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SDIO 1 Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRCSEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the source used to generate the clock. 0x - Source for generated clock is IO PLL. 10 - Source for generated clock is ARM PLL. 11 - Source for generated clock is DDR PLL.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>14</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1400</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the divisor used to divide the source clock to generate the required generated clock frequency.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SDIO_CLK_CTRL@0XF8000150</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f33</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1401</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SDIO Reference Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="UART_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)UART_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UART_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000154</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART 0 reference clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART 1 reference clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRCSEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the source used to generate the clock. 0x - Source for generated clock is IO PLL. 10 - Source for generated clock is ARM PLL. 11 - Source for generated clock is DDR PLL.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>a</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>a00</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the divisor used to divide the source clock to generate the required generated clock frequency.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>UART_CLK_CTRL@0XF8000154</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f33</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>a03</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>UART Reference Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>TRACE CLOCK</H1> -<H2><a name="PCAP_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)PCAP_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PCAP_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000168</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clock active 0 - Clock is disabled 1 - Clock is enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRCSEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the source used to generate the clock. 0x - Source for generated clock is IO PLL. 10 - Source for generated clock is ARM PLL. 11 - Source for generated clock is DDR PLL</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>500</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the divisor used to divide the source clock to generate the required generated clock frequency.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>PCAP_CLK_CTRL@0XF8000168</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f31</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>501</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PCAP 2X Clock Contol</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="FPGA0_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)FPGA0_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA0_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000170</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRCSEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the source used to generate the clock. 0x - Source for generated clock is IO PLL. 10 - Source for generated clock is ARM PLL. 11 - Source for generated clock is DDR PLL.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>500</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the divisor used to divide the source clock to generate the required generated clock frequency. First cascade divider</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIVISOR1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Provides the divisor used to divide the source clock to generate the required generated clock frequency. Second cascade divider</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>FPGA0_CLK_CTRL@0XF8000170</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f03f30</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>200500</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>FPGA 0 Output Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="CLK_621_TRUE">Register (<A href=#mod___slcr> slcr </A>)CLK_621_TRUE</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLK_621_TRUE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80001C4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLK_621_TRUE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable the 6:2:1 mode. 1 for 6:3:2:1. 0 for 4:2:2:1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CLK_621_TRUE@0XF80001C4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>6:2:1 ratio clock, if set</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="APER_CLK_CTRL">Register (<A href=#mod___slcr> slcr </A>)APER_CLK_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>APER_CLK_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800012C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DMA_CPU_2XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DMA 0 AMBA Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>USB0_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>USB 0 AMBA Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>USB1_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>USB 1 AMBA Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GEM0_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Gigabit Ethernet MAC 0 AMBA Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GEM1_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Gigabit Ethernet MAC 1 AMBA Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SDI0_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SDIO0 AMBA Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SDI1_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SDIO 1 AMBA Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SPI0_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SPI 0 AMBA Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SPI1_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SPI 1 AMBA Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CAN0_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>CAN 0 AMBA Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CAN1_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>CAN 1 AMBA Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>I2C0_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>I2C 0 AMBA Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>I2C1_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>I2C 1 AMBA Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UART0_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART 0 AMBA Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UART1_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:21</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART 1 AMBA Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GPIO_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>22:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>400000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>GPIO AMBA Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LQSPI_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:23</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>LQSPI AMBA Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SMC_CPU_1XCLKACT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>24:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SMC AMBA Clock active. 0 - Clock is disabled. 1 - Clock is enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>APER_CLK_CTRL@0XF800012C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1ffcccd</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1fc044d</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AMBA Peripheral Clock Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>THIS SHOULD BE BLANK</H1> -<H1>LOCK IT BACK</H1> -<H2><a name="SLCR_LOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_LOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_LOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When write data contains the lock key value of 0x767B, the write protection mode is enabled. All registers defined in SLCR are write protected until unlocked again through the SLCR_UNLOCK register. A read of this register always returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_LOCK@0XF8000004</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -</TABLE> -<P> -<H2><a name="ps7_ddr_init_data_1_0">ps7_ddr_init_data_1_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ddrc_ctrl"> -ddrc_ctrl -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRC Control Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#Two_rank_cfg"> -Two_rank_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Two rank configuration register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#HPR_reg"> -HPR_reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>HPR Queue control register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#LPR_reg"> -LPR_reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800600C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>LPR Queue control register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#WR_reg"> -WR_reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006010</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>WR Queue control register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_param_reg0"> -DRAM_param_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006014</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM Parameters register 0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_param_reg1"> -DRAM_param_reg1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006018</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM Parameters register 1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_param_reg2"> -DRAM_param_reg2 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800601C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM Parameters register 2</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_param_reg3"> -DRAM_param_reg3 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006020</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM Parameters register 3</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_param_reg4"> -DRAM_param_reg4 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006024</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM Parameters register 4</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_init_param"> -DRAM_init_param -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006028</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM initialization parameters register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_EMR_reg"> -DRAM_EMR_reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800602C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM EMR2, EMR3 access register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_EMR_MR_reg"> -DRAM_EMR_MR_reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006030</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM EMR, MR access register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_burst8_rdwr"> -DRAM_burst8_rdwr -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006034</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM burst 8 read/write register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_disable_DQ"> -DRAM_disable_DQ -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006038</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM Disable DQ register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_addr_map_bank"> -DRAM_addr_map_bank -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800603C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the address bits used as DRAM bank address bits</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_addr_map_col"> -DRAM_addr_map_col -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006040</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the address bits used as DRAM column address bits</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_addr_map_row"> -DRAM_addr_map_row -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006044</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the address bits used as DRAM row address bits</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DRAM_ODT_reg"> -DRAM_ODT_reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006048</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM ODT register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_cmd_timeout_rddata_cpt"> -phy_cmd_timeout_rddata_cpt -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006050</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY command time out and read data capture FIFO register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DLL_calib"> -DLL_calib -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006058</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DLL calibration register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ODT_delay_hold"> -ODT_delay_hold -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800605C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ODT delay and ODT hold register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ctrl_reg1"> -ctrl_reg1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006060</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controller register 1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ctrl_reg2"> -ctrl_reg2 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006064</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controller register 2</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ctrl_reg3"> -ctrl_reg3 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006068</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controller register 3</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ctrl_reg4"> -ctrl_reg4 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800606C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controller register 4</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CHE_REFRESH_TIMER01"> -CHE_REFRESH_TIMER01 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060A0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>CHE_REFRESH_TIMER01</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CHE_T_ZQ"> -CHE_T_ZQ -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060A4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ZQ parameters register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CHE_T_ZQ_Short_Interval_Reg"> -CHE_T_ZQ_Short_Interval_Reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060A8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Misc parameters register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#deep_pwrdwn_reg"> -deep_pwrdwn_reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060AC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Deep powerdown register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#reg_2c"> -reg_2c -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060B0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Training control register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#reg_2d"> -reg_2d -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060B4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Misc Debug register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#dfi_timing"> -dfi_timing -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060B8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DFI timing register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CHE_ECC_CONTROL_REG_OFFSET"> -CHE_ECC_CONTROL_REG_OFFSET -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060C4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ECC error clear register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CHE_CORR_ECC_LOG_REG_OFFSET"> -CHE_CORR_ECC_LOG_REG_OFFSET -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060C8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ECC error correction register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CHE_UNCORR_ECC_LOG_REG_OFFSET"> -CHE_UNCORR_ECC_LOG_REG_OFFSET -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060DC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ECC unrecoverable error status register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CHE_ECC_STATS_REG_OFFSET"> -CHE_ECC_STATS_REG_OFFSET -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060F0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ECC error count register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ECC_scrub"> -ECC_scrub -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060F4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ECC mode/scrub register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_rcvr_enable"> -phy_rcvr_enable -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006114</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Phy receiver enable register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#PHY_Config"> -PHY_Config -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006118</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#PHY_Config"> -PHY_Config -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800611C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#PHY_Config"> -PHY_Config -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006120</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#PHY_Config"> -PHY_Config -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006124</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_init_ratio"> -phy_init_ratio -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800612C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY init ratio register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_init_ratio"> -phy_init_ratio -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006130</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY init ratio register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_init_ratio"> -phy_init_ratio -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006134</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY init ratio register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_init_ratio"> -phy_init_ratio -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006138</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY init ratio register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_rd_dqs_cfg"> -phy_rd_dqs_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006140</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY read DQS configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_rd_dqs_cfg"> -phy_rd_dqs_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006144</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY read DQS configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_rd_dqs_cfg"> -phy_rd_dqs_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006148</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY read DQS configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_rd_dqs_cfg"> -phy_rd_dqs_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800614C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY read DQS configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_wr_dqs_cfg"> -phy_wr_dqs_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006154</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY write DQS configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_wr_dqs_cfg"> -phy_wr_dqs_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006158</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY write DQS configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_wr_dqs_cfg"> -phy_wr_dqs_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800615C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY write DQS configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_wr_dqs_cfg"> -phy_wr_dqs_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006160</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY write DQS configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_we_cfg"> -phy_we_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006168</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY fifo write enable configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_we_cfg"> -phy_we_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800616C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY fifo write enable configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_we_cfg"> -phy_we_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006170</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY fifo write enable configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#phy_we_cfg"> -phy_we_cfg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006174</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY fifo write enable configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#wr_data_slv"> -wr_data_slv -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800617C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY write data slave ratio configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#wr_data_slv"> -wr_data_slv -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006180</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY write data slave ratio configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#wr_data_slv"> -wr_data_slv -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006184</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY write data slave ratio configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#wr_data_slv"> -wr_data_slv -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006188</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>PHY write data slave ratio configuration register for data slice 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#reg_64"> -reg_64 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006190</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Training control register (2)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#reg_65"> -reg_65 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006194</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Training control register (3)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#page_mask"> -page_mask -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006204</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Page mask register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#axi_priority_wr_port"> -axi_priority_wr_port -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006208</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXI Priority control for write port 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#axi_priority_wr_port"> -axi_priority_wr_port -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800620C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXI Priority control for write port 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#axi_priority_wr_port"> -axi_priority_wr_port -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006210</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXI Priority control for write port 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#axi_priority_wr_port"> -axi_priority_wr_port -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006214</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXI Priority control for write port 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#axi_priority_rd_port"> -axi_priority_rd_port -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006218</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXI Priority control for read port 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#axi_priority_rd_port"> -axi_priority_rd_port -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800621C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXI Priority control for read port 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#axi_priority_rd_port"> -axi_priority_rd_port -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006220</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXI Priority control for read port 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#axi_priority_rd_port"> -axi_priority_rd_port -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006224</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXI Priority control for read port 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#lpddr_ctrl0"> -lpddr_ctrl0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80062A8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>LPDDR2 Control 0 Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#lpddr_ctrl1"> -lpddr_ctrl1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80062AC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>LPDDR2 Control 1 Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#lpddr_ctrl2"> -lpddr_ctrl2 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80062B0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>LPDDR2 Control 2 Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#lpddr_ctrl3"> -lpddr_ctrl3 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80062B4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>LPDDR2 Control 3 Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#ddrc_ctrl"> -ddrc_ctrl -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRC Control Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ps7_ddr_init_data_1_0">ps7_ddr_init_data_1_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<H1>DDR INITIALIZATION</H1> -<H1>LOCK DDR</H1> -<H2><a name="ddrc_ctrl">Register (<A href=#mod___slcr> slcr </A>)ddrc_ctrl</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ddrc_ctrl</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_soft_rstb</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Active low soft reset. 0 = Resets the controller 1 = Takes the controller out of reset Note: Controller must be taken out of reset only after all other registers have been programmed.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_powerdown_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controller power down control. 0 = DDRC powerdown disabled 1 = the controller goes into power down after a programmable number of cycles 'Maximum idle clocks before power down' (reg_ddrc_powerdown_to_x32). Note: This register bit may be reprogrammed during the course of normal operation.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_data_bus_width</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR bus width control 00 = 32 bit DDR bus 01 = 16 bit DDR bus 1x = reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_burst8_refresh</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Refresh timeout register. Programmed value plus one will be the number of refresh timeouts that will be allowed to accumulate before traffic is blocked and the refreshes are forced to execute. Closing pages to perform a refresh is a one-time penalty that must be paid for each group of refreshes; therefore, performing refreshes in a burst reduces the per-refresh penalty of these page closings. Higher numbers for burst_of_N_refresh slightly increases utilization; lower numbers decreases the worst-case latency associated with refreshes. 0 = single refresh 1 = burst-of-2 . 7 = burst-of-8 refresh</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rdwr_idle_gap</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When the preferred transaction store is empty for this many clock cycles, switch to the alternate transaction store if it is non-empty. The read transaction store (both high and low priority) is the default preferred transaction store and the write transaction store is the alternate store. When 'Prefer write over read' is set this is reversed.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_rd_bypass</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present in designs supporting read bypass. For Debug only. 0 = Do not disable bypass path for high priority read page hits. 1 = disable bypass path for high priority read page hits.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_act_bypass</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present in designs supporting activate bypass. For Debug only. 0 = Do not disable bypass path for high priority read activates. 1 = disable bypass path for high priority read activates.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_auto_refresh</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable auto-refresh. 0 = do not disable auto-refresh generated by the controller. This input is changeable on the fly. 1 = disable auto-refresh generated by the controller. This input is changeable on the fly. Note: When this transitions from 0 to 1, any pending refreshes will be immediately scheduled by the controller.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ddrc_ctrl@0XF8006000</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRC Control Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="Two_rank_cfg">Register (<A href=#mod___slcr> slcr </A>)Two_rank_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Two_rank_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_rfc_nom_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7f</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tREFI - Average time between refreshes. Unit: in multiples of 32 clocks. DRAM RELATED. Default value is set for DDR3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_active_ranks</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present for multi-rank configurations. Each bit represents one rank. 1=populated; 0=unpopulated 01 = One Rank 11 = Two Ranks Others = Reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_cs_bit0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present for multi-rank configurations. Selects the address bit used as rank address bit 0. Valid Range: 0 to 25, and 31 Internal Base: 9. The selected address bit is determined by adding the Internal Base to the value of this field. If set to 31, rank address bit 0 is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_wr_odt_block</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>180000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>00 = block read/write scheduling for 1-cycle when Write requires changing ODT settings 01 = block read/write scheduling for 2 cycles when Write requires changing ODT settings 10 = block read/write scheduling for 3 cycles when Write requires changing ODT settings 11 = Reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_diff_rank_rd_2cycle_gap</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:21</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present for multi-rank configurations. The two cycle gap is required for mDDR only, due to the large variance in tDQSCK in mDDR. 0 = schedule a 1-cycle gap in data responses when performing consecutive reads to different ranks 1 = schedule 2 cycle gap for the same</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_cs_bit1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present for multi-rank configurations. Selects the address bit used as rank address bit 1. Valid Range: 0 to 25, and 31 Internal Base: 10 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 31, rank address bit 1 is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_open_bank</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present if MEMC_SIMPLE_ADDR_MAP is defined. Since MEMC_SIMPLE_ADDR_MAP is not defined, Reserved 1 = Set the address map to Open Bank mode</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_4bank_ram</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>28:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present if MEMC_SIMPLE_ADDR_MAP is defined. Since MEMC_SIMPLE_ADDR_MAP is not defined, Reserved 1 = Set the address map for 4 Bank RAMs</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>Two_rank_cfg@0XF8006004</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1fffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>8107f</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Two rank configuration register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="HPR_reg">Register (<A href=#mod___slcr> slcr </A>)HPR_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>HPR_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_hpr_min_non_critical_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of clocks that the HPR queue is guaranteed to be non-critical. Unit: 32 clocks</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_hpr_max_starve_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of clocks that the HPR queue can be starved before it goes critical. Unit: 32 clocks</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_hpr_xact_run_length</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3c00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3c00000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of transactions that will be serviced once the HPR queue goes critical is the smaller of this number and the number of transactions available.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>HPR_reg@0XF8006008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3c0780f</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>HPR Queue control register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="LPR_reg">Register (<A href=#mod___slcr> slcr </A>)LPR_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LPR_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800600C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_lpr_min_non_critical_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of clocks that the LPR queue is guaranteed to be non-critical. Unit: 32 clocks</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_lpr_max_starve_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of clocks that the LPR queue can be starved before it goes critical. Unit: 32 clocks</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_lpr_xact_run_length</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3c00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of transactions that will be serviced once the LPR queue goes critical is the smaller of this number and the number of transactions available</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>LPR_reg@0XF800600C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2001001</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>LPR Queue control register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="WR_reg">Register (<A href=#mod___slcr> slcr </A>)WR_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>WR_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006010</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_w_min_non_critical_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of clock cycles that the WR queue is guaranteed to be non-critical.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_w_xact_run_length</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of transactions that will be serviced once the WR queue goes critical is the smaller of this number and the number of transactions available</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_w_max_starve_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of clocks that the Write queue can be starved before it goes critical. Unit: 32 clocks. FOR PERFORMANCE ONLY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>WR_reg@0XF8006010</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>14001</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>WR Queue control register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_param_reg0">Register (<A href=#mod___slcr> slcr </A>)DRAM_param_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_param_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006014</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_rc</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1a</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1a</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tRC - Min time between activates to same bank (spec: 65 ns for DDR2-400 and smaller for faster parts). DRAM RELATED. Default value is set for DDR3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_rfc_min</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3fc0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>54</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1500</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tRFC(min) - Minimum time from refresh to refresh or activate (spec: 75ns to 195ns). DRAM RELATED. Default value is set for DDR3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_post_selfref_gap_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1fc000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Minimum time to wait after coming out of self refresh before doing anything. This must be bigger than all the constraints that exist. (spec: Maximum of tXSNR and tXSRD and tXSDLL which is 512 clocks). Unit: in multiples of 32 clocks DRAM RELATED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_param_reg0@0XF8006014</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>4151a</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM Parameters register 0</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_param_reg1">Register (<A href=#mod___slcr> slcr </A>)DRAM_param_reg1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_param_reg1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006018</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_wr2pre</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>12</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Minimum time between write and precharge to same bank Non-LPDDR2 -> WL + BL/2 + tWR LPDDR2 -> WL + BL/2 + tWR + 1 Unit: Clocks where, WL = write latency. BL = burst length. This must match the value programmed in the BL bit of the mode register to the DRAM. BST is not supported at present. tWR = write recovery time. This comes directly from the DRAM specs.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_powerdown_to_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>After this many clocks of NOP or DESELECT the controller will put the DRAM into power down. This must be enabled in the Master Control Register. Unit: Multiples of 32 clocks.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_faw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fc00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>15</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5400</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tFAW - At most 4 banks must be activated in a rolling window of tFAW cycles. Unit: clocks DRAM RELATED.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_ras_max</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>23</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>230000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tRAS(max) - Maximum time between activate and precharge to same bank. Maximum time that a page can be kept open (spec: 70 us). If this is zero. The page is closed after each transaction. Unit: Multiples of 1024 clocks DRAM RELATED.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_ras_min</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>13</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4c00000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tRAS(min) - Minimum time between activate and precharge to the same bank(spec: 45 ns). Unit: clocks DRAM RELATED. Default value is set for DDR3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_cke</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Minimum number of cycles of CKE HIGH/LOW during power down and self refresh. LPDDR2 mode: Set this to the larger of tCKE or tCKESR. Non-LPDDR2 designs: Set this to tCKE value. Unit: clocks.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_param_reg1@0XF8006018</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f7ffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>44e354d2</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM Parameters register 1</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_param_reg2">Register (<A href=#mod___slcr> slcr </A>)DRAM_param_reg2</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_param_reg2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800601C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_write_latency</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Time from write command to write data on DDRC to PHY Interface. (PHY adds an extra flop delay on the write data path; hence this value is one less than the write latency of the DRAM device itself). DDR2/3 -> WL -1 LPDDR -> 1 LPDDR2 ->WL Where WL = Write Latency of DRAM DRAM RELATED.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rd2wr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Minimum time from read command to write command. Include time for bus turnaround and all per-bank, per-rank, and global constraints. non-LPDDR2 -> RL + BL/2 + 2 - WL LPDDR2 -> RL + BL/2 + RU(tDQSCKmax / tCK) + 1 - WL Write Pre-amble and DQ/DQS jitter timer is included in the above equation. DRAM RELATED.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_wr2rd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Minimum time from write command to read command. Includes time for bus turnaround and recovery times and all per-bank, per-rank, and global constraints. non-LPDDR2 -> WL + tWTR + BL/2 LPDDR2 -> WL + tWTR + BL/2 + 1 Unit: clocks. Where, WL = Write latency, BL = burst length. This should match the value. Programmed in the BL bit of the mode register to the DRAM. tWTR = internal WRITE to READ command delay. This comes directly from the DRAM specs.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_xp</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tXP: Minimum time after power down exit to any operation. DRAM RELATED.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_pad_pd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>22:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>700000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If pads have a power-saving mode, this is the greater of the time for the pads to enter power down or the time for the pads to exit power down. Used only in non-DFI designs. Unit: clocks.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rd2pre</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:23</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f800000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Minimum time from read to precharge of same bank DDR2 -> AL + BL/2 + max(tRTP, 2) - 2 DDR3 -> AL + max (tRTP, 4) mDDR -> BL/2 LPDDR2 -> BL/2 + tRTP - 1 AL = Additive Latency BL = DRAM Burst Length tRTP = value from spec DRAM RELATED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_rcd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>70000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tRCD - AL Minimum time from activate to read or write command to same bank Min value for this is 1. AL = Additive Latency DRAM RELATED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_param_reg2@0XF800601C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>720238e5</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM Parameters register 2</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_param_reg3">Register (<A href=#mod___slcr> slcr </A>)DRAM_param_reg3</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_param_reg3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006020</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_ccd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tCCD - Minimum time between two reads or two writes (from bank a to bank b) is this value + 1 DRAM RELATED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_rrd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tRRD - Minimum time between activates from bank a to bank b. (spec: 10ns or less) DRAM RELATED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_refresh_margin</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Issue critical refresh or page close this many cycles before the critical refresh or page timer expires. It is recommended that this not be changed from the default value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_rp</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tRP - Minimum time from precharge to activate of same bank. DRAM RELATED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_refresh_to_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If the refresh timer (tRFC_nom, as known as tREFI) has expired at least once, but it has not expired burst_of_N_refresh times yet, then a 'speculative refresh' may be performed. A speculative refresh is a refresh performed at a time when refresh would be useful, but before it is absolutely required. When the DRAM bus is idle for a period of time determined by this refresh idle timeout and the refresh timer has expired at least once since the last refresh, then a 'speculative refresh' will be performed. Speculative refreshes will continue successively until there are no refreshes pending or until new reads or writes are issued to the controller.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_sdram</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:21</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1 = sdram device 0 = non-sdram device</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mobile</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>22:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1= mobile/LPDDR DRAM device in use. 0=non-mobile DRAM device in use.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_clock_stop_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:23</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1=enable the assertion of stop_clk to the PHY whenever a clock is not required by LPDDR/ LPDDR2. 0=stop_clk will never be asserted. Note: This is only present for implementations supporting LPDDR/LPDDR2 devices.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_read_latency</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>28:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Set to RL. Time from Read command to Read data on DRAM interface. Unit: clocks This signal is present for designs supporting LPDDR/LPDDR2 DRAM only. It is used to calculate when DRAM clock may be stopped. RL = Read Latency of DRAM Note: This signal is present for designs supporting LPDDR/LPDDR2 DRAM only. It is used to calculate when DRAM clock may be stopped.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_mode_ddr1_ddr2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>29:29</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>unused</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_pad_pd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>30:30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1 = disable the pad power down feature 0 = Enable the pad power down feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_loopback</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:31</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>unused</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_param_reg3@0XF8006020</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffffffc</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>272872d0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM Parameters register 3</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_param_reg4">Register (<A href=#mod___slcr> slcr </A>)DRAM_param_reg4</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_param_reg4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006024</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_en_2t_timing_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1 = DDRC will use 2T timing 0 = DDRC will use 1T timing</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_prefer_write</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1 = Bank selector prefers writes over reads</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_max_rank_rd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3c</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present for multi-rank configurations Background: Reads to the same rank can be performed back-to-back. Reads from different ranks require additional 1-cycle latency in between (to avoid possible data bus contention). The controller arbitrates for bus access on a cycle-by-cycle basis; therefore after a read is scheduled, there is a clock cycle in which only reads from the same bank are eligible to be scheduled. This prevents reads from other ranks from having fair access to the data bus. This parameter represents the maximum number of 64-byte reads (or 32B reads in some short read cases) that can be scheduled consecutively to the same rank. After this number is reached, a 1-cycle delay is inserted by the scheduler to allow all ranks a fair opportunity to be scheduled. Higher numbers increase bandwidth utilization, lower numbers increase fairness (and hence worst-case latency). FOR PERFORMANCE ONLY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mr_wr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>A low to high signal on this signal will do a mode register write or read. Controller will accept this command, if this signal is detected high and 'ddrc_reg_mr_wr_busy' is detected low.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mr_addr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>180</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Mode register address - for non-LPDDR2 modes. This register is don't care in LPDDR2 mode 00 = MR0 01 = MR1 10 = MR2 11 = MR3</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mr_data</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>24:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1fffe00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Mode register write data - for non-LPDDR2 modes. For LPDDR2, these 16-bits are interpreted as Writes: \'7bMR Addr[7:0], MR Data[7:0]\'7d. Reads: \'7bMR Addr[7:0], Don't Care[7:0]\'7d</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ddrc_reg_mr_wr_busy</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:25</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Core must initiate a MR write / read operation only if this signal is low. This signal goes high in the clock after the controller accepts the write / read request. It goes low when (i) MR write command has been issued to the DRAM (ii) MR Read data has been returned to Controller. Any MR write / read command that is received when 'ddrc_reg_mr_wr_busy' is high is not accepted. 1 = Indicates that mode register write / read operation is in progress. 0 = Indicates that the core can initiate a mode register write / read operation.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mr_type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:26</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Indicates whether the Mode register operation is read or write 1 = read 0 = write</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mr_rdata_valid</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This bit indicates whether the Mode Register Read Data present at address 0xA9 is valid or not. This bit is 1'b0 by default. This bit will be cleared (1'b0), whenever a Mode Register Read command is issued. This bit will be set to 1'b1, when the Mode Register Read Data is written to register 0xA9.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_param_reg4@0XF8006024</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM Parameters register 4</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_init_param">Register (<A href=#mod___slcr> slcr </A>)DRAM_init_param</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_init_param</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006028</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_final_wait_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Cycles to wait after completing the DRAM init sequence before starting the dynamic scheduler. Units are in counts of a global timer that pulses every 32 clock cycles. Default value is set for DDR3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_pre_ocd_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>780</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Wait period before driving the 'OCD Complete' command to DRAM. Units are in counts of a global timer that pulses every 32 clock cycles. There is no known spec requirement for this. It may be set to zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_mrd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>tMRD - Cycles between Load Mode commands DRAM RELATED Default value is set for DDR3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_init_param@0XF8006028</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2007</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM initialization parameters register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_EMR_reg">Register (<A href=#mod___slcr> slcr </A>)DRAM_EMR_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_EMR_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800602C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_emr2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Non LPDDR2- Value to be loaded into DRAM EMR2 registers. For LPDDR2 - Value to Write to the MR3 register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_emr3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Non LPDDR2- Value to be loaded into DRAM EMR3 registers. Used in non-LPDDR2 designs only.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_EMR_reg@0XF800602C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>8</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM EMR2, EMR3 access register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_EMR_MR_reg">Register (<A href=#mod___slcr> slcr </A>)DRAM_EMR_MR_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_EMR_MR_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006030</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>930</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>930</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Non LPDDR2-Value to be loaded into the DRAM Mode register. Bit 8 is for DLL and the setting here is ignored. The controller sets appropriately. For LPDDR2 - Value to Write to the MR1 register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_emr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Non LPDDR2-Value to be loaded into DRAM EMR registers. Bits [9:7] are for OCD and the setting in this register is ignored. The controller sets those bits appropriately. For LPDDR2 - Value to Write to the MR2 register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_EMR_MR_reg@0XF8006030</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>40930</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM EMR, MR access register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_burst8_rdwr">Register (<A href=#mod___slcr> slcr </A>)DRAM_burst8_rdwr</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_burst8_rdwr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006034</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_burst_rdwr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This controls the burst size used to access the DRAM. This must match the BL mode register setting in the DRAM. In LPDDR and LPDDR2, Burst length of 16 is supported only in Half Bus Width mode. Every input read/write command has 4 cycles of data associated with it and that is not enough data for doing Burst Length16 in Full Bus Width mode. 0010 - Burst length of 4 0100 - Burst length of 8 1000 - Burst length of 16 (only supported for LPDDR AND LPDDR2) All other values are reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_pre_cke_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>167</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1670</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Cycles to wait after reset before driving CKE high to start the DRAM initialization sequence. Units: 1024 clock cycles. DDR2 Specifications typically require this to be programmed for a delay of >= 200 us. LPDDR2 - tINIT0 of 20 ms (max) + tINIT1 of 100 ns (min)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_post_cke_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Cycles to wait after driving CKE high to start the DRAM initialization sequence. Units: 1024 clocks. DDR2 typically require a 400 ns delay, requiring this value to be programmed to 2 at all clock speeds. LPDDR2 - Typically require this to be programmed for a delay of 200 us.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_burstchop</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>28:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Feature not supported. When 1, Controller is out in burstchop mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_burst8_rdwr@0XF8006034</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>13ff3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>11674</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM burst 8 read/write register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_disable_DQ">Register (<A href=#mod___slcr> slcr </A>)DRAM_disable_DQ</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_disable_DQ</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006038</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_force_low_pri_n</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Active Low signal. When asserted (0), all incoming transactions will be forced to low priority. Forcing the incoming transactions to low priority implicitly turns OFF Bypass. Otherwise, HPR is allowed if enabled in the AXI priority read registers.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_dq</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When 1, DDRC will not de-queue any transactions from the CAM. Bypass will also be disabled. All transactions will be queued in the CAM. This is for debug only; no reads or writes are issued to DRAM as long as this is asserted. This bit is intended to be switched on-the-fly</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_debug_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Not Applicable in this PHY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_level_start</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Not Applicable in this PHY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_level_start</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Not Applicable in this PHY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dq0_wait_t</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Not Applicable in this PHY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_disable_DQ@0XF8006038</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1fc3</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM Disable DQ register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_addr_map_bank">Register (<A href=#mod___slcr> slcr </A>)DRAM_addr_map_bank</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_addr_map_bank</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800603C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_bank_b0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the address bits used as bank address bit 0. Valid Range: 0 to 14 Internal Base: 5 The selected address bit for each of the bank address bits is determined by adding the Internal Base to the value of this field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_bank_b1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>70</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the address bits used as bank address bit 1. Valid Range: 0 to 14; Internal Base: 6. The selected address bit for each of the bank address bits is determined by adding the Internal Base to the value of this field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_bank_b2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>700</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the AXI address bit used as bank address bit 2. Valid range 0 to 14, and 15. Internal Base: 7. The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, bank address bit 2 is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bits used as column address bits 6. Half bus width mode: Selects the address bits used as column address bits 7. Valid range is 0-7. Internal Base 8. The selected address bit for each of the column address bits is determined by adding the Internal Base to the value of this field. Internal base: 9</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bits used as column address bits 7. Half bus width mode: Selects the address bits used as column address bits 8. Valid range is 0-7. Internal Base 9. The selected address bit for each of the column address bits is determined by adding the Internal Base to the value of this field. Internal base: 9</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_addr_map_bank@0XF800603C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>777</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Selects the address bits used as DRAM bank address bits</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_addr_map_col">Register (<A href=#mod___slcr> slcr </A>)DRAM_addr_map_col</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_addr_map_col</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006040</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bit used as column address bit 3. Half bus width mode: Selects the address bit used as column address bit 4. Valid Range: 0 to 7. Internal Base: 5 The selected address bit is determined by adding the Internal Base to the value of this field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bit used as column address bit 4. Half bus width mode: Selects the address bit used as column address bit 5. Valid Range: 0 to 7 Internal Base: 6 The selected address bit is determined by adding the Internal Base to the value of this field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bit used as column address bit 5. Half bus width mode: Selects the address bit used as column address bits 6. Valid Range: 0 to 7. Internal Base: 7. The selected address bit for each of the column address bits is determined by adding the Internal Base to the value of this field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bit used as column address bit 8. Half bus width mode: Selects the address bit used as column address bit 9. Valid Range: 0 to 7, and 15. Internal Base: 10. The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, this column address bit is set to 0. Note: Per JEDEC spec, column address bit 10 is reserved for indicating auto-precharge, and hence no source address bit can be mapped to column address bit 10.In LPDDR2, there is a dedicated bit for auto-precharge in the CA bus, and hence column bit 10 is used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b8</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bit used as column address bit 9. Half bus width mode: Selects the address bit used as column address bit 11. (Column address bit 10 in LPDDR2 mode) Valid Range: 0 to 7, and 15 Internal Base: 11 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, this column address bit is set to 0. Note: Per JEDEC spec, column address bit 10 is reserved for indicating auto-precharge, and hence no source address bit can be mapped to column address bit 10. In LPDDR2, there is a dedicated bit for auto-precharge in the CA bus, and hence column bit 10 is used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b9</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f00000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bit used as column address bit 11. (Column address bit 10 in LPDDR2 mode) Half bus width mode: Selects the address bit used as column address bit 12. (Column address bit 11 in LPDDR2 mode) Valid Range: 0 to 7, and 15 Internal Base: 12 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, this column address bit is set to 0. Note: Per JEDEC DDR2 spec, column address bit 10 is reserved for indicating auto-precharge, and hence no source address bit can be mapped to column address bit 10. In LPDDR2, there is a dedicated bit for auto-precharge in the CA bus, and hence column bit 10 is used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b10</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bit used as column address bit 12. (Column address bit 11 in LPDDR2 mode) Half bus width mode: Selects the address bit used as column address bit 13. (Column address bit 12 in LPDDR2 mode) Valid Range: 0 to 7, and 15. Internal Base: 13 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, this column address bit is set to 0. Note: Per JEDEC DDR2 spec, column address bit 10 is reserved for indicating auto-precharge, and hence no source address bit can be mapped to column address bit 10. In LPDDR2, there is a dedicated bit for auto-precharge in the CA bus, and hence column bit 10 is used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_col_b11</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f0000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Full bus width mode: Selects the address bit used as column address bit 13. (Column address bit 12 in LPDDR2 mode) Half bus width mode: Unused. To make it unused, this should be set to 15. (Column address bit 13 in LPDDR2 mode) Valid Range: 0 to 7, and 15. Internal Base: 14. The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, this column address bit is set to 0. Note: Per JEDEC DDR2 spec, column address bit 10 is reserved for indicating auto-precharge, and hence no source address bit can be mapped to column address bit 10. In LPDDR2, there is a dedicated bit for auto-precharge in the CA bus, and hence column bit 10 is used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_addr_map_col@0XF8006040</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>fff00000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Selects the address bits used as DRAM column address bits</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_addr_map_row">Register (<A href=#mod___slcr> slcr </A>)DRAM_addr_map_row</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_addr_map_row</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006044</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_row_b0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the AXI address bits used as row address bit 0. Valid Range: 0 to 11. Internal Base: 9 The selected address bit for each of the row address bits is determined by adding the Internal Base to the value of this field</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_row_b1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the AXI address bits used as row address bit 1. Valid Range: 0 to 11. Internal Base: 10 The selected address bit for each of the row address bits is determined by adding the Internal Base to the value of this field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_row_b2_11</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the AXI address bits used as row address bits 2 to 11. Valid Range: 0 to 11. Internal Base: 11 (for row address bit 2) to 20 (for row address bit 11) The selected address bit for each of the row address bits is determined by adding the Internal Base to the value of this field.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_row_b12</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the AXI address bit used as row address bit 12. Valid Range: 0 to 11, and 15 Internal Base: 21 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, row address bit 12 is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_row_b13</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the AXI address bit used as row address bit 13. Valid Range: 0 to 11, and 15 Internal Base: 22 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, row address bit 13 is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_row_b14</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f00000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects theAXI address bit used as row address bit 14. Valid Range: 0 to 11, and 15 Internal Base: 23 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, row address bit 14 is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_addrmap_row_b15</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the AXI address bit used as row address bit 15. Valid Range: 0 to 11, and 15 Internal Base: 24 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, row address bit 15 is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_addr_map_row@0XF8006044</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ff66666</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Selects the address bits used as DRAM row address bits</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DRAM_ODT_reg">Register (<A href=#mod___slcr> slcr </A>)DRAM_ODT_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRAM_ODT_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006048</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rank0_rd_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Unused. [1:0] - Indicates which remote ODT's must be turned ON during a read to rank 0. Each of the 2 ranks has a remote ODT (in the DRAM) which can be turned on by setting the appropriate bit here. Rank 0 is controlled by the LSB; Rank 1 is controlled by bit next to the LSB. For each rank, set its bit to 1 to enable its ODT. [2] - If 1 then local ODT is enabled during reads to rank 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rank0_wr_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>38</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>[1:0] - Indicates which remote ODT's must be turned on during a write to rank 0. Each of the 2 ranks has a remote ODT (in the DRAM) which can be turned on by setting the appropriate bit here. Rank 0 is controlled by the LSB; Rank 1 is controlled by bit next to the LSB. For each rank, set its bit to 1 to enable its ODT. [2] - If 1 then local ODT is enabled during writes to rank 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rank1_rd_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1c0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Unused</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rank1_wr_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Unused</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_local_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Value to drive on the 2-bit local_odt PHY outputs when output enable is not asserted and a read is in progress (where 'in progress' is defined as after a read command is issued and until all read data has been returned all the way to the controller.) Typically this is set to the value required to enable termination at the desired strength for read usage.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_local_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Value to drive on the 2-bit local_odt PHY outputs when write levelling is enabled for DQS.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_idle_local_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>30000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>30000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Value to drive on the 2-bit local_odt PHY outputs when output enable is not asserted and a read is not in progress. Typically this is the value required to disable termination to save power when idle.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rank2_rd_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1c0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Unused</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rank2_wr_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:21</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Unused</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rank3_rd_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Unused</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rank3_wr_odt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>29:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>38000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Unused</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DRAM_ODT_reg@0XF8006048</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3c248</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DRAM ODT register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_cmd_timeout_rddata_cpt">Register (<A href=#mod___slcr> slcr </A>)phy_cmd_timeout_rddata_cpt</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_cmd_timeout_rddata_cpt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006050</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_cmd_to_data</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Not used in DFI PHY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_cmd_to_data</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Not used in DFI PHY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rdc_we_to_re_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This register value + 1 give the number of clock cycles between writing into the Read Capture FIFO and the read operation. The setting of this register determines the read data timing and depends upon total delay in the system for read operation which include fly-by delays, trace delay, clkout_invert etc. This is used only if reg_phy_use_fixed_re=1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rdc_fifo_rst_disable</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When 1, disable counting the number of times the Read Data Capture FIFO has been reset when the FIFO was not empty.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_use_fixed_re</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When 1: PHY generates FIFO read enable after fixed number of clock cycles as defined by reg_phy_rdc_we_to_re_delay[3:0]. When 0: PHY uses the not_empty method to do the read enable generation. Note: This port must be set HIGH during training/leveling process i.e. when ddrc_dfi_wrlvl_en/ ddrc_dfi_rdlvl_en/ ddrc_dfi_rdlvl_gate_en port is set HIGH.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rdc_fifo_rst_err_cnt_clr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clear/reset for counter rdc_fifo_rst_err_cnt[3:0]. 0: no clear, 1: clear. Note: This is a synchronous dynamic signal that must have timing closed.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dis_phy_ctrl_rstn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the reset from Phy Ctrl macro. 1: PHY Ctrl macro reset port is always HIGH 0: PHY Ctrl macro gets power on reset.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_clk_stall_level</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1 = stall clock, for DLL aging control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_num_of_dq0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This register value determines register determines the number of samples used for each ratio increment during Gate Training. Num_of_iteration = reg_phy_gatelvl_num_of_dq0 + 1 The recommended value for this register is 8. Accuracy is better with higher value, but this will cause leveling to run longer.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_num_of_dq0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>70000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This register value determines register determines the number of samples used for each ratio increment during Write Leveling. Num_of_iteration = reg_phy_wrlvl_num_of_dq0 + 1 The recommended value for this register is 8. Accuracy is better with higher value, but this will cause leveling to run longer.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_cmd_timeout_rddata_cpt@0XF8006050</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ff0f8fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>77010800</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY command time out and read data capture FIFO register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DLL_calib">Register (<A href=#mod___slcr> slcr </A>)DLL_calib</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DLL_calib</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006058</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dll_calib_to_min_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Unused in DFI Controller.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dll_calib_to_max_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Unused in DFI Controller.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_dll_calib</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When 1, disable dll_calib generated by the controller. The core should issue the dll_calib signal using co_gs_dll_calib input. This input is changeable on the fly. When 0, controller will issue dll_calib periodically</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DLL_calib@0XF8006058</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>101</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DLL calibration register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ODT_delay_hold">Register (<A href=#mod___slcr> slcr </A>)ODT_delay_hold</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ODT_delay_hold</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800605C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rd_odt_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UNUSED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_wr_odt_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The delay, in clock cycles, from issuing a write command to setting ODT values associated with that command. ODT setting should remain constant for the entire time that DQS is driven by the controller. The suggested value for DDR2 is WL - 5 and for DDR3 is 0. WL is Write latency. DDR2 ODT has a 2-cycle on-time delay and a 2.5-cycle off-time delay. ODT is not applicable for LPDDR and LPDDR2 modes.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rd_odt_hold</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Unused</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_wr_odt_hold</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Cycles to hold ODT for a Write Command. When 0x0, ODT signal is ON for 1 cycle. When 0x1, it is ON for 2 cycles, etc. The values to program in different modes are : DRAM Burst of 4 -2, DRAM Burst of 8 -4</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ODT_delay_hold@0XF800605C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>5003</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ODT delay and ODT hold register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ctrl_reg1">Register (<A href=#mod___slcr> slcr </A>)ctrl_reg1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ctrl_reg1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006060</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_pageclose</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If true, bank will be closed and kept closed if no transactions are available for it. If false, bank will remain open until there is a need to close it (to open a different page, or for page timeout or refresh timeout.) This does not apply when auto-refresh is used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_lpr_num_entries</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7e</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3e</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of entries in the low priority transaction store is this value plus 1. In this design, by default all read ports are treated as low priority and hence the value of 0x1F. The hpr_num_entries is 32 minus this value. Bit [6] is ignored.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_auto_pre_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When set, most reads and writes will be issued with auto-precharge. (Exceptions can be made for collision cases.)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_refresh_update_level</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Toggle this signal to indicate that refresh register(s) have been updated. The value will be automatically updated when exiting soft reset. So it does not need to be toggled initially.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_wc</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When 1, disable Write Combine</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_collision_page_opt</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When this is set to '0', auto-precharge will be disabled for the flushed command in a collision case. Collision cases are write followed by read to same address, read followed by write to same address, or write followed by write to same address with DIS_WC bit = 1 (where 'same address' comparisons exclude the two address bits representing critical word).</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_selfref_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If 1, then the controller will put the DRAM into self refresh when the transaction store is empty.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ctrl_reg1@0XF8006060</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>17ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3e</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Controller register 1</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ctrl_reg2">Register (<A href=#mod___slcr> slcr </A>)ctrl_reg2</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ctrl_reg2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006064</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_go2critical_hysteresis</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1fe0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Describes the number of cycles that co_gs_go2critical_rd or co_gs_go2critical_wr must be asserted before the corresponding queue moves to the 'critical' state in the DDRC. The arbiter controls the co_gs_go2critical_* signals; it is designed for use with this hysteresis field set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_go2critical_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1 - Set reg_ddrc_go2critical_wr and reg_ddrc_go2critical_rd signals going to DDRC based on 'urgent' input coming from AXI master. 0 - Keep reg_ddrc_go2critical_wr and reg_ddrc_go2critical_rd signals going to DDRC at 1'b0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ctrl_reg2@0XF8006064</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>21fe0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>20000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Controller register 2</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ctrl_reg3">Register (<A href=#mod___slcr> slcr </A>)ctrl_reg3</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ctrl_reg3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006068</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_wrlvl_ww</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>41</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>41</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write leveling write-to-write delay. Specifies the minimum number of clock cycles from the assertion of a ddrc_dfi_wrlvl_strobe signal to the next ddrc_dfi_wrlvl_strobe signal. Only applicable when connecting to PHY's operating in 'PHY RdLvl Evaluation' mode. Recommended value is: (RL + reg_phy_rdc_we_to_re_delay + 50) Only present in designs that support DDR3 and LPDDR2 devices.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rdlvl_rr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>41</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Read leveling read-to-read delay. Specifies the minimum number of clock cycles from the assertion of a read command to the next read command. Only applicable when connecting to PHY's operating in 'PHY RdLvl Evaluation' mode. Only present in designs that support DDR3 devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_t_wlmrd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>28</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>280000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>First DQS/DQS# rising edge after write leveling mode is programmed. This is same as the tMLRD value from the DRAM spec. Only present in designs that support DDR3 devices.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ctrl_reg3@0XF8006068</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>284141</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Controller register 3</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ctrl_reg4">Register (<A href=#mod___slcr> slcr </A>)ctrl_reg4</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ctrl_reg4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800606C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>dfi_t_ctrlupd_interval_min_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This is the minimum amount of time between Controller initiated DFI update requests (which will be executed whenever the controller is idle). Set this number higher to reduce the frequency of update requests, which can have a small impact on the latency of the first read request when the controller is idle. Units: 1024 clocks</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>dfi_t_ctrlupd_interval_max_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>16</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This is the maximum amount of time between Controller initiated DFI update requests. This timer resets with each update request; when the timer expires, traffic is blocked for a few cycles. PHY can use this idle time to recalibrate the delay lines to the DLLs. The DLL calibration is also used to reset PHY FIFO pointers in case of data capture errors. Updates are required to maintain calibration over PVT, but frequent updates may impact performance. Units: 1024 clocks</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ctrl_reg4@0XF800606C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1610</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Controller register 4</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="CHE_REFRESH_TIMER01">Register (<A href=#mod___slcr> slcr </A>)CHE_REFRESH_TIMER01</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHE_REFRESH_TIMER01</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060A0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>refresh_timer0_start_value_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Refresh Timer for Rank 1. Unit: in multiples of 32 clocks. (Only present in multi-rank configurations). FOR PERFORMANCE ONLY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>refresh_timer1_start_value_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Refresh Timer for Rank 0. (Only present in multi-rank configurations). Unit: in multiples of 32 clocks. FOR PERFORMANCE ONLY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CHE_REFRESH_TIMER01@0XF80060A0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>8000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>CHE_REFRESH_TIMER01</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="CHE_T_ZQ">Register (<A href=#mod___slcr> slcr </A>)CHE_T_ZQ</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHE_T_ZQ</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060A4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_auto_zq</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1=disable controller generation of ZQCS command. Co_gs_zq_calib_short can be used instead to control ZQ calibration commands. 0=internally generate ZQCS commands based on reg_ddrc_t_zq_short_interval_x1024 This is only present for implementations supporting DDR3 and LPDDR2 devices.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_ddr3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Indicates operating in DDR2/DDR3 mode. Default value is set for DDR3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_mod</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffc</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Mode register set command update delay (minimum the larger of 12 clock cycles or 15ns)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_zq_long_nop</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of cycles of NOP required after a ZQCL (ZQ calibration long) command is issued to DRAM. Units: Clock cycles This is only present for implementations supporting DDR3 and LPDDR2 devices.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_zq_short_nop</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffc00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of cycles of NOP required after a ZQCS (ZQ calibration short) command is issued to DRAM. Units: Clock cycles This is only present for implementations supporting DDR3 and LPDDR2 devices.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CHE_T_ZQ@0XF80060A4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>10200802</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ZQ parameters register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="CHE_T_ZQ_Short_Interval_Reg">Register (<A href=#mod___slcr> slcr </A>)CHE_T_ZQ_Short_Interval_Reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHE_T_ZQ_Short_Interval_Reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060A8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>t_zq_short_interval_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c845</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c845</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Average interval to wait between automatically issuing ZQCS (ZQ calibration short) commands to DDR3 devices. Meaningless if reg_ddrc_dis_auto_zq=1. Units: 1024 Clock cycles. Applicable for DDR3 and LPDDR2 devices.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>dram_rstn_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>67</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6700000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of cycles to assert DRAM reset signal during init sequence. Units: 1024 Clock cycles. Applicable for DDR3 only.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CHE_T_ZQ_Short_Interval_Reg@0XF80060A8</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>670c845</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Misc parameters register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="deep_pwrdwn_reg">Register (<A href=#mod___slcr> slcr </A>)deep_pwrdwn_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>deep_pwrdwn_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060AC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>deeppowerdown_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1 - Controller puts the DRAM into Deep Powerdown mode when the transaction store is empty. 0 - Brings Controller out of Deep Powerdown mode Present only in designs configured to support LPDDR or LPDDR2 FOR PERFORMANCE ONLY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>deeppowerdown_to_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1fe</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1fe</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Minimum deep power down time applicable only for LPDDR2. LPDDR exits from deep power down mode immediately after reg_ddrc_deeppowerdown_en is deasserted. For LPDDR2, Value from the spec is 500us. Units are in 1024 clock cycles. Present only in designs configured to support LPDDR or LPDDR2. FOR PERFORMANCE ONLY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>deep_pwrdwn_reg@0XF80060AC</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1fe</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Deep powerdown register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="reg_2c">Register (<A href=#mod___slcr> slcr </A>)reg_2c</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_2c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060B0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>dfi_wrlvl_max_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>fff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write leveling maximum time. Specifies the maximum number of clock cycles that the controller will wait for a response (phy_dfi_wrlvl_resp) to a write leveling enable signal (ddrc_dfi_wrlvl_en). Only applicable when connecting to PHY's operating in 'PHY WrLvl Evaluation' mode. Typical value 0xFFF Units 1024 clocks</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>dfi_rdlvl_max_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>fff000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Read leveling maximum time. Specifies the maximum number of clock cycles that the controller will wait for a response (phy_dfi_rdlvl_resp) to a read leveling enable signal (ddrc_dfi_rdlvl_en or ddrc_dfi_rdlvl_gate_en). Only applicable when connecting to PHY's operating in 'PHY RdLvl Evaluation' mode. Typical value 0xFFF Units 1024 clocks</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ddrc_reg_twrlvl_max_error</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>24:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When '1' indicates that the reg_ddrc_dfi_wrlvl_max_x1024 timer has timed out. This is a Clear-on-Write register. If write leveling timed out, an error is indicated by the DDRC and this bit gets set. The value is held until it is cleared. Clearing is done by writing a '0' to this register. Only present in designs that support DDR3.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ddrc_reg_trdlvl_max_error</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:25</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When '1' indicates that the reg_ddrc_dfi_rdrlvl_max_x1024 timer has timed out. This is a Clear-on-Write register. If read leveling or gate training timed out, an error is indicated by the DDRC and this bit gets set. The value is held at that value until it is cleared. Clearing is done by writing a '0' to this register. Only present in designs that support DDR3 or LPDDR2 devices.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_wr_level_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:26</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1 = Write leveling mode has been enabled as part of init sequence; Valid only for DDR3 DFI designs 0 = Write leveling disabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_rd_dqs_gate_level</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1 = Read DQS Gate Leveling mode has been enabled as part of init sequence; Valid only for DDR3 DFI designs 0= Read DQS gate leveling is disabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_rd_data_eye_train</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>28:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1 = Read Data Eye training mode has been enabled as part of init sequence. Only present in designs that support DDR3 or LPDDR2 devices.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>reg_2c@0XF80060B0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1fffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1cffffff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Training control register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="reg_2d">Register (<A href=#mod___slcr> slcr </A>)reg_2d</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_2d</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060B4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_2t_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the clock edge in which chip select (CSN) and CKE is asserted. Unsupported feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_skip_ocd</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This register must be kept at 1'b1. 1'b0 is NOT supported. 1 - Indicates the controller to skip OCD adjustment step during DDR2 initialization. OCD_Default and OCD_Exit are performed instead. 0 - Not supported.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_pre_bypass</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present in designs supporting precharge bypass. When 1, disable bypass path for high priority precharges FOR DEBUG ONLY.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>reg_2d@0XF80060B4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Misc Debug register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="dfi_timing">Register (<A href=#mod___slcr> slcr </A>)dfi_timing</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>dfi_timing</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060B8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_t_rddata_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Time from the assertion of a READ command on the DFI interface to the assertion of the phy_dfi_rddata_en signal. Non-LPDDR -> RL-1 LPDDR -> RL Where RL is read latency of DRAM.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_t_ctrlup_min</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7fe0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies the minimum number of clock cycles that the ddrc_dfi_ctrlupd_req signal must be asserted.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dfi_t_ctrlup_max</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>24:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1ff8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies the maximum number of clock cycles that the ddrc_dfi_ctrlupd_req signal can assert.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>dfi_timing@0XF80060B8</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1ffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>200066</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DFI timing register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="CHE_ECC_CONTROL_REG_OFFSET">Register (<A href=#mod___slcr> slcr </A>)CHE_ECC_CONTROL_REG_OFFSET</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHE_ECC_CONTROL_REG_OFFSET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060C4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Clear_Uncorrectable_DRAM_ECC_error</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Writing 1 to this bit will clear the uncorrectable log valid bit and the uncorrectable error counters.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Clear_Correctable_DRAM_ECC_error</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Writing 1 to this bit will clear the correctable log valid bit and the correctable error counters.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CHE_ECC_CONTROL_REG_OFFSET@0XF80060C4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ECC error clear register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="CHE_CORR_ECC_LOG_REG_OFFSET">Register (<A href=#mod___slcr> slcr </A>)CHE_CORR_ECC_LOG_REG_OFFSET</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHE_CORR_ECC_LOG_REG_OFFSET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060C8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CORR_ECC_LOG_VALID</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Set to '1' when a correctable ECC error is captured. As long as this is '1' no further ECC errors will be captured. This is cleared when a '1' is written to register bit[1] of ECC CONTROL REGISTER (0x31)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ECC_CORRECTED_BIT_NUM</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fe</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Indicator of the bit number syndrome in error for single-bit errors. The field is 7-bit wide to handle 72-bits of data. This is an encoded value with ECC bits placed in between data. The encoding is given in section 5.4 Correctable bit number from the lowest error lane is reported here. There are only 13-valid bits going to an ECC lane (8-data + 5-ECC). Only 4-bits are needed to encode a max value of d'13. Bit[7] of this register is used to indicate the exact byte lane. When a error happens, if CORR_ECC_LOG_COL[0] from register 0x33 is 1'b0, then the error happened in Lane 0 or 1. If CORR_ECC_LOG_COL[0] is 1'b1, then the error happened in Lane 2 or 3. Bit[7] of this register indicates whether the error is from upper or lower byte lane. If it is 0, then it is lower byte lane and if it is 1, then it is upper byte lane. Together with CORR_ECC_LOG_COL[0] and bit[7] of this register, the exact byte lane with correctable error can be determined.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CHE_CORR_ECC_LOG_REG_OFFSET@0XF80060C8</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ECC error correction register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="CHE_UNCORR_ECC_LOG_REG_OFFSET">Register (<A href=#mod___slcr> slcr </A>)CHE_UNCORR_ECC_LOG_REG_OFFSET</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHE_UNCORR_ECC_LOG_REG_OFFSET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060DC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UNCORR_ECC_LOG_VALID</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Set to '1' when an uncorrectable ECC error is captured. As long as this is '1' no further ECC errors will be captured. This is cleared when a '1' is written to register bit[0] of ECC CONTROL REGISTER (0x31).</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CHE_UNCORR_ECC_LOG_REG_OFFSET@0XF80060DC</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ECC unrecoverable error status register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="CHE_ECC_STATS_REG_OFFSET">Register (<A href=#mod___slcr> slcr </A>)CHE_ECC_STATS_REG_OFFSET</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHE_ECC_STATS_REG_OFFSET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060F0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>STAT_NUM_CORR_ERR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Returns the number of correctable ECC errors seen since the last read. Counter saturates at max value. This is cleared when a '1' is written to register bit[1] of ECC CONTROL REGISTER (0x58).</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>STAT_NUM_UNCORR_ERR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Returns the number of un-correctable errors since the last read. Counter saturates at max value. This is cleared when a '1' is written to register bit[0] of ECC CONTROL REGISTER (0x58).</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CHE_ECC_STATS_REG_OFFSET@0XF80060F0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ECC error count register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ECC_scrub">Register (<A href=#mod___slcr> slcr </A>)ECC_scrub</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ECC_scrub</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80060F4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_ecc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DRAM ECC Mode. The only valid values that works for this project are 3'b000 (No ECC) and 3'b100 (SEC/DED over 1-beat). To run the design in ECC mode, set reg_ddrc_data_bus_width to 2'b01 (Half bus width) and reg_ddrc_ecc_mode to 3'b100. In this mode, there will be 16-data bits + 6-bit ECC on the DRAM bus. Controller must NOT be put in full bus width mode, when ECC is turned ON. 000 - No ECC, 001 - Reserved 010 - Parity 011 - Reserved 100 - SEC/DED over 1-beat 101 - SEC/DED over multiple beats 110 - Device Correction 111 - Reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_scrub</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This feature is NOT supported. Only default value works. 1 - Disable ECC scrubs 0 - Enable ECC scrubs Valid only when reg_ddrc_ecc_mode = 3'b100.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ECC_scrub@0XF80060F4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>8</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>ECC mode/scrub register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_rcvr_enable">Register (<A href=#mod___slcr> slcr </A>)phy_rcvr_enable</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_rcvr_enable</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006114</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dif_on</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Value to drive to IO receiver enable pins when turning it ON. When NOT in powerdown or self-refresh (when CKE=1) this value will be sent to the IOs to control receiver on/off. IOD is the size specified by the IO_DIFEN_SIZE parameter.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dif_off</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Value to drive to IO receiver enable pins when turning it OFF. When in powerdown or self-refresh (CKE=0) this value will be sent to the IOs to control receiver on/off. IOD is the size specified by the IO_DIFEN_SIZE parameter. Depending on the IO, one of these signals dif_on or dif_off can be used.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_rcvr_enable@0XF8006114</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Phy receiver enable register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="PHY_Config">Register (<A href=#mod___slcr> slcr </A>)PHY_Config</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PHY_Config</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006118</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_data_slice_in_use</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Data bus width selection for Read FIFO RE generation. One bit for each data slice. 1: data slice is valid. 0: read data responses are ignored. Note: The Phy Data Slice 0 must always be enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rdlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>RESERVED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>RESERVED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>RESERVED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_board_lpbk_tx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>External Board Loopback testing. 1: This Slice behaves as Transmitter for board loopback. 0: disable This port must be set '0' always except when in external board level loopback test mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_board_lpbk_rx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>External Board Loopback testing. 1: This Slice behaves as Receiver for board loopback. 0: disable This port must be set '0' always except when in external board level loopback test mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_shift_dq</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7fc0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Determines whether early shifting is required for a particular DQ bit when reg_phy_bist_mode is 2'b10; 1'b1: PRBS pattern shifted early by 1 bit. 1'b0: PRBS pattern without any shift.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_err_clr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clear the mismatch error flag from the BIST Checker. 1'b1: sticky error flag is cleared 1'b0: No effect</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dq_offset</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>30:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Offset value from DQS to DQ. Default value: 0x40 (for 90 degree shift). This is only used when reg_phy_use_wr_level=1. #Note 1: When a port width (W) is multiple of N instances of Ranks or Slices, each instance will get W/N bits. Instance n will get (n+1)*(W/N) -1: n (W/N) bits where n (0, 1, to N-1) is the instance number of Rank or Slice.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>PHY_Config@0XF8006118</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7fffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>40000001</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="PHY_Config">Register (<A href=#mod___slcr> slcr </A>)PHY_Config</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PHY_Config</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800611C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_data_slice_in_use</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Data bus width selection for Read FIFO RE generation. One bit for each data slice. 1: data slice is valid. 0: read data responses are ignored. Note: The Phy Data Slice 0 must always be enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rdlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>RESERVED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>RESERVED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>RESERVED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_board_lpbk_tx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>External Board Loopback testing. 1: This Slice behaves as Transmitter for board loopback. 0: disable This port must be set '0' always except when in external board level loopback test mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_board_lpbk_rx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>External Board Loopback testing. 1: This Slice behaves as Receiver for board loopback. 0: disable This port must be set '0' always except when in external board level loopback test mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_shift_dq</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7fc0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Determines whether early shifting is required for a particular DQ bit when reg_phy_bist_mode is 2'b10; 1'b1: PRBS pattern shifted early by 1 bit. 1'b0: PRBS pattern without any shift.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_err_clr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clear the mismatch error flag from the BIST Checker. 1'b1: sticky error flag is cleared 1'b0: No effect</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dq_offset</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>30:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Offset value from DQS to DQ. Default value: 0x40 (for 90 degree shift). This is only used when reg_phy_use_wr_level=1. #Note 1: When a port width (W) is multiple of N instances of Ranks or Slices, each instance will get W/N bits. Instance n will get (n+1)*(W/N) -1: n (W/N) bits where n (0, 1, to N-1) is the instance number of Rank or Slice.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>PHY_Config@0XF800611C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7fffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>40000001</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="PHY_Config">Register (<A href=#mod___slcr> slcr </A>)PHY_Config</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PHY_Config</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006120</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_data_slice_in_use</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Data bus width selection for Read FIFO RE generation. One bit for each data slice. 1: data slice is valid. 0: read data responses are ignored. Note: The Phy Data Slice 0 must always be enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rdlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>RESERVED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>RESERVED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>RESERVED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_board_lpbk_tx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>External Board Loopback testing. 1: This Slice behaves as Transmitter for board loopback. 0: disable This port must be set '0' always except when in external board level loopback test mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_board_lpbk_rx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>External Board Loopback testing. 1: This Slice behaves as Receiver for board loopback. 0: disable This port must be set '0' always except when in external board level loopback test mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_shift_dq</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7fc0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Determines whether early shifting is required for a particular DQ bit when reg_phy_bist_mode is 2'b10; 1'b1: PRBS pattern shifted early by 1 bit. 1'b0: PRBS pattern without any shift.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_err_clr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clear the mismatch error flag from the BIST Checker. 1'b1: sticky error flag is cleared 1'b0: No effect</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dq_offset</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>30:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Offset value from DQS to DQ. Default value: 0x40 (for 90 degree shift). This is only used when reg_phy_use_wr_level=1. #Note 1: When a port width (W) is multiple of N instances of Ranks or Slices, each instance will get W/N bits. Instance n will get (n+1)*(W/N) -1: n (W/N) bits where n (0, 1, to N-1) is the instance number of Rank or Slice.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>PHY_Config@0XF8006120</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7fffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>40000001</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="PHY_Config">Register (<A href=#mod___slcr> slcr </A>)PHY_Config</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PHY_Config</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006124</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_data_slice_in_use</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Data bus width selection for Read FIFO RE generation. One bit for each data slice. 1: data slice is valid. 0: read data responses are ignored. Note: The Phy Data Slice 0 must always be enabled.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rdlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>RESERVED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>RESERVED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_inc_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>RESERVED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_board_lpbk_tx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>External Board Loopback testing. 1: This Slice behaves as Transmitter for board loopback. 0: disable This port must be set '0' always except when in external board level loopback test mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_board_lpbk_rx</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>External Board Loopback testing. 1: This Slice behaves as Receiver for board loopback. 0: disable This port must be set '0' always except when in external board level loopback test mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_shift_dq</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7fc0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Determines whether early shifting is required for a particular DQ bit when reg_phy_bist_mode is 2'b10; 1'b1: PRBS pattern shifted early by 1 bit. 1'b0: PRBS pattern without any shift.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_err_clr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Clear the mismatch error flag from the BIST Checker. 1'b1: sticky error flag is cleared 1'b0: No effect</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dq_offset</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>30:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Offset value from DQS to DQ. Default value: 0x40 (for 90 degree shift). This is only used when reg_phy_use_wr_level=1. #Note 1: When a port width (W) is multiple of N instances of Ranks or Slices, each instance will get W/N bits. Instance n will get (n+1)*(W/N) -1: n (W/N) bits where n (0, 1, to N-1) is the instance number of Rank or Slice.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>PHY_Config@0XF8006124</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7fffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>40000001</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_init_ratio">Register (<A href=#mod___slcr> slcr </A>)phy_init_ratio</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800612C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The user programmable init ratio used by Write Leveling FSM</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffc00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23c00</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The user programmable init ratio used Gate Leveling FSM</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_init_ratio@0XF800612C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>23c00</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY init ratio register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_init_ratio">Register (<A href=#mod___slcr> slcr </A>)phy_init_ratio</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006130</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The user programmable init ratio used by Write Leveling FSM</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffc00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8a</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>22800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The user programmable init ratio used Gate Leveling FSM</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_init_ratio@0XF8006130</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>22800</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY init ratio register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_init_ratio">Register (<A href=#mod___slcr> slcr </A>)phy_init_ratio</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006134</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The user programmable init ratio used by Write Leveling FSM</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffc00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8b</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>22c00</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The user programmable init ratio used Gate Leveling FSM</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_init_ratio@0XF8006134</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>22c00</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY init ratio register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_init_ratio">Register (<A href=#mod___slcr> slcr </A>)phy_init_ratio</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006138</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wrlvl_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The user programmable init ratio used by Write Leveling FSM</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_gatelvl_init_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffc00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>92</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>24800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The user programmable init ratio used Gate Leveling FSM</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_init_ratio@0XF8006138</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>24800</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY init ratio register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_rd_dqs_cfg">Register (<A href=#mod___slcr> slcr </A>)phy_rd_dqs_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_rd_dqs_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006140</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>35</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>35</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for read DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the read DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line. Provide a default value of 0x40 for most applications</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: overwrite the delay/tap value for read DQS slave DLL with the value of the debug_rd_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_rd_dqs_slave_force is 1, replace delay/tap value for read DQS slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_rd_dqs_cfg@0XF8006140</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>35</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY read DQS configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_rd_dqs_cfg">Register (<A href=#mod___slcr> slcr </A>)phy_rd_dqs_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_rd_dqs_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006144</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>35</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>35</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for read DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the read DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line. Provide a default value of 0x40 for most applications</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: overwrite the delay/tap value for read DQS slave DLL with the value of the debug_rd_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_rd_dqs_slave_force is 1, replace delay/tap value for read DQS slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_rd_dqs_cfg@0XF8006144</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>35</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY read DQS configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_rd_dqs_cfg">Register (<A href=#mod___slcr> slcr </A>)phy_rd_dqs_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_rd_dqs_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006148</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>35</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>35</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for read DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the read DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line. Provide a default value of 0x40 for most applications</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: overwrite the delay/tap value for read DQS slave DLL with the value of the debug_rd_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_rd_dqs_slave_force is 1, replace delay/tap value for read DQS slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_rd_dqs_cfg@0XF8006148</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>35</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY read DQS configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_rd_dqs_cfg">Register (<A href=#mod___slcr> slcr </A>)phy_rd_dqs_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_rd_dqs_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800614C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>35</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>35</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for read DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the read DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line. Provide a default value of 0x40 for most applications</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: overwrite the delay/tap value for read DQS slave DLL with the value of the debug_rd_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_dqs_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_rd_dqs_slave_force is 1, replace delay/tap value for read DQS slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_rd_dqs_cfg@0XF800614C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>35</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY read DQS configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_wr_dqs_cfg">Register (<A href=#mod___slcr> slcr </A>)phy_wr_dqs_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_wr_dqs_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006154</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>77</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>77</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for write DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: overwrite the delay/tap value for write DQS slave DLL with the value of the reg_phy_wr_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_wr_dqs_slave_force is 1, replace delay/tap value for write DQS slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_wr_dqs_cfg@0XF8006154</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>77</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY write DQS configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_wr_dqs_cfg">Register (<A href=#mod___slcr> slcr </A>)phy_wr_dqs_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_wr_dqs_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006158</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for write DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: overwrite the delay/tap value for write DQS slave DLL with the value of the reg_phy_wr_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_wr_dqs_slave_force is 1, replace delay/tap value for write DQS slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_wr_dqs_cfg@0XF8006158</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>7c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY write DQS configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_wr_dqs_cfg">Register (<A href=#mod___slcr> slcr </A>)phy_wr_dqs_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_wr_dqs_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800615C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for write DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: overwrite the delay/tap value for write DQS slave DLL with the value of the reg_phy_wr_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_wr_dqs_slave_force is 1, replace delay/tap value for write DQS slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_wr_dqs_cfg@0XF800615C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>7c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY write DQS configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_wr_dqs_cfg">Register (<A href=#mod___slcr> slcr </A>)phy_wr_dqs_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_wr_dqs_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006160</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>75</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>75</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for write DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: overwrite the delay/tap value for write DQS slave DLL with the value of the reg_phy_wr_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_dqs_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_wr_dqs_slave_force is 1, replace delay/tap value for write DQS slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_wr_dqs_cfg@0XF8006160</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>75</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY write DQS configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_we_cfg">Register (<A href=#mod___slcr> slcr </A>)phy_we_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_we_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006168</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>e4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value to be used when fifo_we_X_force_mode is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_in_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: overwrite the delay/tap value for fifo_we_X slave DLL with the value of the debug_fifo_we_in_delayX bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_in_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Delay value to be used when debug_fifo_we_in_forceX is set to 1. R is the number of Ranks supported.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_we_cfg@0XF8006168</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>e4</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY fifo write enable configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_we_cfg">Register (<A href=#mod___slcr> slcr </A>)phy_we_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_we_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800616C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>df</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>df</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value to be used when fifo_we_X_force_mode is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_in_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: overwrite the delay/tap value for fifo_we_X slave DLL with the value of the debug_fifo_we_in_delayX bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_in_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Delay value to be used when debug_fifo_we_in_forceX is set to 1. R is the number of Ranks supported.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_we_cfg@0XF800616C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>df</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY fifo write enable configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_we_cfg">Register (<A href=#mod___slcr> slcr </A>)phy_we_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_we_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006170</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value to be used when fifo_we_X_force_mode is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_in_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: overwrite the delay/tap value for fifo_we_X slave DLL with the value of the debug_fifo_we_in_delayX bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_in_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Delay value to be used when debug_fifo_we_in_forceX is set to 1. R is the number of Ranks supported.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_we_cfg@0XF8006170</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>e0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY fifo write enable configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="phy_we_cfg">Register (<A href=#mod___slcr> slcr </A>)phy_we_cfg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>phy_we_cfg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006174</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>e7</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value to be used when fifo_we_X_force_mode is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_in_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: overwrite the delay/tap value for fifo_we_X slave DLL with the value of the debug_fifo_we_in_delayX bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_fifo_we_in_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Delay value to be used when debug_fifo_we_in_forceX is set to 1. R is the number of Ranks supported.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>phy_we_cfg@0XF8006174</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>e7</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY fifo write enable configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="wr_data_slv">Register (<A href=#mod___slcr> slcr </A>)wr_data_slv</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>wr_data_slv</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800617C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>b7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>b7</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for write data slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQ muxes in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: overwrite the delay/tap value for write data slave DLL with the value of the reg_phy_wr_data_slave_force bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_wr_data_slave_force is 1, replace delay/tap value for write data slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>wr_data_slv@0XF800617C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>b7</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY write data slave ratio configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="wr_data_slv">Register (<A href=#mod___slcr> slcr </A>)wr_data_slv</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>wr_data_slv</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006180</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>bc</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>bc</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for write data slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQ muxes in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: overwrite the delay/tap value for write data slave DLL with the value of the reg_phy_wr_data_slave_force bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_wr_data_slave_force is 1, replace delay/tap value for write data slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>wr_data_slv@0XF8006180</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>bc</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY write data slave ratio configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="wr_data_slv">Register (<A href=#mod___slcr> slcr </A>)wr_data_slv</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>wr_data_slv</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006184</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>bc</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>bc</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for write data slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQ muxes in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: overwrite the delay/tap value for write data slave DLL with the value of the reg_phy_wr_data_slave_force bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_wr_data_slave_force is 1, replace delay/tap value for write data slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>wr_data_slv@0XF8006184</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>bc</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY write data slave ratio configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="wr_data_slv">Register (<A href=#mod___slcr> slcr </A>)wr_data_slv</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>wr_data_slv</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006188</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>b5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>b5</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for write data slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQ muxes in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: overwrite the delay/tap value for write data slave DLL with the value of the reg_phy_wr_data_slave_force bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_data_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_wr_data_slave_force is 1, replace delay/tap value for write data slave DLL with this value.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>wr_data_slv@0XF8006188</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>b5</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>PHY write data slave ratio configuration register for data slice 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="reg_64">Register (<A href=#mod___slcr> slcr </A>)reg_64</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_64</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006190</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_loopback</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Loopback testing. 1: enable, 0: disable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bl2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved for future Use.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_at_spd_atpg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1 = run scan test at full clock speed but with less coverage 0 = run scan test at slow clock speed but with high coverage During normal function mode, this port must be set 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_enable</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable the internal BIST generation and checker logic when this port is set HIGH. Setting this port as 0 will stop the BIST generator/checker. In order to run BIST tests, this port must be set along with reg_phy_loopback.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_force_err</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This register bit is used to check that BIST checker is not giving false pass. When this port is set 1, data bit gets inverted before sending out to the external memory and BIST checker must return a mismatch error.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_bist_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The mode bits select the pattern type generated by the BIST generator. All the patterns are transmitted continuously once enabled. 2'b00: constant pattern (0 repeated on each DQ bit) 2'b01: low freq pattern (00001111 repeated on each DQ bit) 2'b10: PRBS pattern (2^7-1 PRBS pattern repeated on each DQ bit) Each DQ bit always has same data value except when early shifting in PRBS mode is requested</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_invert_clkout</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Inverts the polarity of DRAM clock. 0: core clock is passed on to DRAM 1: inverted core clock is passed on to DRAM. Use this when CLK can arrive at a DRAM device ahead of DQS or coincidence with DQS based on boad topology. This effectively delays the CLK to the DRAM device by half -cycle, providing a CLK edge that DQS can align to during leveling.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_all_dq_mpr_rd_resp</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1=assume DRAM provides read response on all DQ bits. (In this mode, dq_in[7:0] are OR'd together and dq_in[15:8] are AND'd together.) 0=(default) best for DRAM read responses on only 1 DQ bit; works with reduced accuracy if DRAM provides read response on all bits. (In this mode dq_in[7:0] are OR'd together and dq_in[15:8] are OR'd together.)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_sel_logic</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects one of the two read leveling algorithms.'b0 = Select algorithm # 1'b1 = Select algorithm # 2 Please refer to Read Data Eye Training section in PHY User Guide for details about the Read Leveling algorithms</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_ctrl_slave_ratio</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffc00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Ratio value for address/command launch timing in phy_ctrl macro. This is the fraction of a clock cycle represented by the shift to be applied to the read DQS in units of 256ths. In other words, the full cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_ctrl_slave_force</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1: overwrite the delay/tap value for address/command timing slave DLL with the value of the reg_phy_rd_dqs_slave_delay bus.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_ctrl_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>27:21</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fe00000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg_phy_rd_dqs_slave_force is 1, replace delay/tap value for address/command timing slave DLL with this value. This is a bit value, the remaining 2 bits are in register 0x65 bits[19:18].</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_use_rank0_delays</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>28:28</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Delay selection 1- Rank 0 delays are used for all ranks 0- Each Rank uses its own delay</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_lpddr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>29:29</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1= mobile/LPDDR DRAM device in use. 0=non-LPDDR DRAM device in use.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_cmd_latency</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>30:30</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If set to 1, command comes to phy_ctrl through a flop.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_int_lpbk</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:31</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1=enables the PHY internal loopback for DQ,DQS,DM before Ios. By default must be 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>reg_64@0XF8006190</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>10040080</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Training control register (2)</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="reg_65">Register (<A href=#mod___slcr> slcr </A>)reg_65</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_65</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006194</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_wr_rl_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This delay determines when to select the active rank's ratio logic delay for Write Data and Write DQS slave delay lines after PHY receives a write command at Control Interface. The programmed value must be (Write Latency - 4) with a minimum value of 1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_rd_rl_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This delay determines when to select the active rank's ratio logic delay for Read Data and Read DQS slave delay lines after PHY receives a read command at Control Interface. The programmed value must be (Read Latency - 3) with a minimum value of 1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dll_lock_diff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3c00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3c00</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>The Maximum number of delay line taps variation allowed while maintaining the master DLL lock. When the PHY is in locked state and the variation on the clock exceeds the variation indicated by the register, the lock signal is deasserted</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_use_wr_level</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write Leveling training control. 0: Use register programmed ratio values 1: Use ratio for delay line calculated by write leveling Note: This is a Synchronous dynamic signal that requires timing closure.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_use_rd_dqs_gate_level</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Read DQS Gate training control. 0: Use register programmed ratio values 1: Use ratio for delay line calculated by DQS gate leveling Note: This is a Synchronous dynamic signal that requires timing closure.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_use_rd_data_eye_level</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Read Data Eye training control. 0: Use register programmed ratio values 1: Use ratio for delay line calculated by data eye leveling Note: This is a Synchronous dynamic signal that requires timing closure</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_dis_calib_rst</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the dll_calib (internally generated) signal from resetting the Read Capture FIFO pointers and portions of phy_data. Note: dll_calib is (i) generated by dfi_ctrl_upd_req or (ii) by the PHY when it detects that the clock frequency variation has exceeded the bounds set by reg_phy_dll_lock_diff or (iii) periodically throughout the leveling process. dll_calib will update the slave DL with PVT-compensated values according to master DLL outputs</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_phy_ctrl_slave_delay</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>If reg-phy_rd_dqs_slave_force is 1, replace delay/tap value for address/command timing slave DLL with this value</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>reg_65@0XF8006194</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1fc82</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Training control register (3)</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="page_mask">Register (<A href=#mod___slcr> slcr </A>)page_mask</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>page_mask</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006204</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_page_addr_mask</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This register must be set based on the value programmed on the reg_ddrc_addrmap_* registers. Set the Column address bits to 0. Set the Page and Bank address bits to 1. This is used for calculating page_match inside the slave modules in Arbiter. The page_match is considered during the arbitration process. This mask applies to 64-bit address and not byte address. Setting this value to 0 disables transaction prioritization based on page/bank match.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>page_mask@0XF8006204</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Page mask register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="axi_priority_wr_port">Register (<A href=#mod___slcr> slcr </A>)axi_priority_wr_port</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>axi_priority_wr_port</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006208</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_pri_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Priority of this Write Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_aging_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable aging for this Write Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_urgent_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable urgent for this Write Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_page_match_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the page match feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_rmw_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FEATURE NOT SUPPORTED. Only 16-bit data aligned transfers allowed when ECC is used. All commands issued as Writes. No RMW support. Disable RMW command generated for this Port 1 - Disable RMW feature 0 - Enable RMW feature When Enabled and ECC mode is set all Write command generated by this port will be RMW.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>axi_priority_wr_port@0XF8006208</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f03ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>803ff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AXI Priority control for write port 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="axi_priority_wr_port">Register (<A href=#mod___slcr> slcr </A>)axi_priority_wr_port</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>axi_priority_wr_port</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800620C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_pri_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Priority of this Write Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_aging_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable aging for this Write Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_urgent_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable urgent for this Write Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_page_match_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the page match feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_rmw_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FEATURE NOT SUPPORTED. Only 16-bit data aligned transfers allowed when ECC is used. All commands issued as Writes. No RMW support. Disable RMW command generated for this Port 1 - Disable RMW feature 0 - Enable RMW feature When Enabled and ECC mode is set all Write command generated by this port will be RMW.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>axi_priority_wr_port@0XF800620C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f03ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>803ff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AXI Priority control for write port 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="axi_priority_wr_port">Register (<A href=#mod___slcr> slcr </A>)axi_priority_wr_port</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>axi_priority_wr_port</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006210</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_pri_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Priority of this Write Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_aging_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable aging for this Write Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_urgent_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable urgent for this Write Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_page_match_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the page match feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_rmw_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FEATURE NOT SUPPORTED. Only 16-bit data aligned transfers allowed when ECC is used. All commands issued as Writes. No RMW support. Disable RMW command generated for this Port 1 - Disable RMW feature 0 - Enable RMW feature When Enabled and ECC mode is set all Write command generated by this port will be RMW.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>axi_priority_wr_port@0XF8006210</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f03ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>803ff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AXI Priority control for write port 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="axi_priority_wr_port">Register (<A href=#mod___slcr> slcr </A>)axi_priority_wr_port</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>axi_priority_wr_port</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006214</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_pri_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Priority of this Write Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_aging_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable aging for this Write Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_urgent_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable urgent for this Write Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_page_match_wr_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the page match feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_rmw_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FEATURE NOT SUPPORTED. Only 16-bit data aligned transfers allowed when ECC is used. All commands issued as Writes. No RMW support. Disable RMW command generated for this Port 1 - Disable RMW feature 0 - Enable RMW feature When Enabled and ECC mode is set all Write command generated by this port will be RMW.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>axi_priority_wr_port@0XF8006214</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f03ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>803ff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AXI Priority control for write port 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="axi_priority_rd_port">Register (<A href=#mod___slcr> slcr </A>)axi_priority_rd_port</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>axi_priority_rd_port</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006218</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_pri_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Priority of this Read Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_aging_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable aging for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_urgent_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable urgent for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_page_match_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the page match feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_set_hpr_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable reads to be generated as HPR for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>axi_priority_rd_port@0XF8006218</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f03ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AXI Priority control for read port 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="axi_priority_rd_port">Register (<A href=#mod___slcr> slcr </A>)axi_priority_rd_port</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>axi_priority_rd_port</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800621C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_pri_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Priority of this Read Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_aging_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable aging for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_urgent_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable urgent for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_page_match_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the page match feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_set_hpr_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable reads to be generated as HPR for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>axi_priority_rd_port@0XF800621C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f03ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AXI Priority control for read port 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="axi_priority_rd_port">Register (<A href=#mod___slcr> slcr </A>)axi_priority_rd_port</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>axi_priority_rd_port</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006220</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_pri_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Priority of this Read Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_aging_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable aging for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_urgent_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable urgent for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_page_match_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the page match feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_set_hpr_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable reads to be generated as HPR for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>axi_priority_rd_port@0XF8006220</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f03ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AXI Priority control for read port 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="axi_priority_rd_port">Register (<A href=#mod___slcr> slcr </A>)axi_priority_rd_port</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>axi_priority_rd_port</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006224</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_pri_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Priority of this Read Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_aging_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable aging for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_disable_urgent_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable urgent for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_dis_page_match_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable the page match feature.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_arb_set_hpr_rd_portn</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable reads to be generated as HPR for this Read Port.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>axi_priority_rd_port@0XF8006224</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f03ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>3ff</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>AXI Priority control for read port 0.</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="lpddr_ctrl0">Register (<A href=#mod___slcr> slcr </A>)lpddr_ctrl0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>lpddr_ctrl0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80062A8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_lpddr2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1=LPDDR2 DRAM device in Use. 0=non-LPDDR2 device in use Present only in designs configured to support LPDDR2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_per_bank_refresh</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1:Per bank refresh 0:All bank refresh Per bank refresh allows traffic to flow to other banks. Per bank refresh is not supported on all LPDDR2 devices. Present only in designs configured to support LPDDR2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_derate_enable</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>0: Timing parameter derating is disabled. 1: Timing parameter derating is enabled using MR4 read value. Present only in designs configured to support LPDDR2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mr4_margin</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UNUSED</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>lpddr_ctrl0@0XF80062A8</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ff7</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>LPDDR2 Control 0 Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="lpddr_ctrl1">Register (<A href=#mod___slcr> slcr </A>)lpddr_ctrl1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>lpddr_ctrl1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80062AC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_mr4_read_interval</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Interval between two MR4 reads, USED to derate the timing parameters. Present only in designs configured to support LPDDR2.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>lpddr_ctrl1@0XF80062AC</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>LPDDR2 Control 1 Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="lpddr_ctrl2">Register (<A href=#mod___slcr> slcr </A>)lpddr_ctrl2</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>lpddr_ctrl2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80062B0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_min_stable_clock_x1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Time to wait after the first CKE high, tINIT2. Present only in designs configured to support LPDDR2. Units: 1 clock cycle. LPDDR2 typically requires 5 x tCK delay.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_idle_after_reset_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>12</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>120</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Idle time after the reset command, tINIT4. Present only in designs configured to support LPDDR2. Units: 32 clock cycles.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_t_mrw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>5</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Time to wait during load mode register writes. Present only in designs configured to support LPDDR2. LPDDR2 typically requires value of 5.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>lpddr_ctrl2@0XF80062B0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>5125</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>LPDDR2 Control 2 Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="lpddr_ctrl3">Register (<A href=#mod___slcr> slcr </A>)lpddr_ctrl3</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>lpddr_ctrl3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80062B4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_max_auto_init_x1024</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>a6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>a6</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Maximum duration of the auto initialization, tINIT5. Present only in designs configured to support LPDDR2. Units: 1024 clock cycles. LPDDR2 typically requires 10 us.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dev_zqinit_x32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3ff00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>12</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>ZQ initial calibration, tZQINIT. Present only in designs configured to support LPDDR2. Units: 32 clock cycles. LPDDR2 typically requires 1 us.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>lpddr_ctrl3@0XF80062B4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>12a6</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>LPDDR2 Control 3 Register</B> -</TD> -</TR> -</TABLE> -<P> -<H1>POLL ON DCI STATUS</H1> -<H2><a name="DDRIOB_DCI_STATUS">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DCI_STATUS</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DCI_STATUS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B74</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DONE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI done signal</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DCI_STATUS@0XF8000B74</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>tobe</B> -</TD> -</TR> -</TABLE> -<P> -<H1>UNLOCK DDR</H1> -<H2><a name="ddrc_ctrl">Register (<A href=#mod___slcr> slcr </A>)ddrc_ctrl</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ddrc_ctrl</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_soft_rstb</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Active low soft reset. 0 = Resets the controller 1 = Takes the controller out of reset Note: Controller must be taken out of reset only after all other registers have been programmed.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_powerdown_en</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controller power down control. 0 = DDRC powerdown disabled 1 = the controller goes into power down after a programmable number of cycles 'Maximum idle clocks before power down' (reg_ddrc_powerdown_to_x32). Note: This register bit may be reprogrammed during the course of normal operation.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_data_bus_width</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDR bus width control 00 = 32 bit DDR bus 01 = 16 bit DDR bus 1x = reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_burst8_refresh</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Refresh timeout register. Programmed value plus one will be the number of refresh timeouts that will be allowed to accumulate before traffic is blocked and the refreshes are forced to execute. Closing pages to perform a refresh is a one-time penalty that must be paid for each group of refreshes; therefore, performing refreshes in a burst reduces the per-refresh penalty of these page closings. Higher numbers for burst_of_N_refresh slightly increases utilization; lower numbers decreases the worst-case latency associated with refreshes. 0 = single refresh 1 = burst-of-2 . 7 = burst-of-8 refresh</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_rdwr_idle_gap</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When the preferred transaction store is empty for this many clock cycles, switch to the alternate transaction store if it is non-empty. The read transaction store (both high and low priority) is the default preferred transaction store and the write transaction store is the alternate store. When 'Prefer write over read' is set this is reversed.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_rd_bypass</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present in designs supporting read bypass. For Debug only. 0 = Do not disable bypass path for high priority read page hits. 1 = disable bypass path for high priority read page hits.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_act_bypass</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:15</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Only present in designs supporting activate bypass. For Debug only. 0 = Do not disable bypass path for high priority read activates. 1 = disable bypass path for high priority read activates.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reg_ddrc_dis_auto_refresh</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Disable auto-refresh. 0 = do not disable auto-refresh generated by the controller. This input is changeable on the fly. 1 = disable auto-refresh generated by the controller. This input is changeable on the fly. Note: When this transitions from 0 to 1, any pending refreshes will be immediately scheduled by the controller.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>ddrc_ctrl@0XF8006000</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>81</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRC Control Register</B> -</TD> -</TR> -</TABLE> -<P> -<H1>CHECK DDR STATUS</H1> -<H2><a name="mode_sts_reg">Register (<A href=#mod___slcr> slcr </A>)mode_sts_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>mode_sts_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8006054</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ddrc_reg_operating_mode</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Gives the status of the controller. 0 = DDRC Init 1 = Normal operation 2 = Power-down mode 3 = Self-refresh mode 4 and above = deep power down mode (LPDDR2 only)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>mode_sts_reg@0XF8006054</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>tobe</B> -</TD> -</TR> -</TABLE> -<P> -</TABLE> -<P> -<H2><a name="ps7_mio_init_data_1_0">ps7_mio_init_data_1_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_UNLOCK"> -SLCR_UNLOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#GPIOB_CTRL"> -GPIOB_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>GPIOB control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_ADDR0"> -DDRIOB_ADDR0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B40</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIOB Address 0 Configuartion Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_ADDR1"> -DDRIOB_ADDR1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B44</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIOB Address 1 Configuration Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DATA0"> -DDRIOB_DATA0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B48</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIOB Data 0 Configuration Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DATA1"> -DDRIOB_DATA1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B4C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIOB Data 1 Configuration Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DIFF0"> -DDRIOB_DIFF0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B50</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIOB Differential DQS 0 Configuration Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DIFF1"> -DDRIOB_DIFF1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B54</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIOB Differential DQS 1 Configuration Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_CLOCK"> -DDRIOB_CLOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B58</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIOB Differential Clock Configuration Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DRIVE_SLEW_ADDR"> -DDRIOB_DRIVE_SLEW_ADDR -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B5C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIOB Drive Slew Address Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DRIVE_SLEW_DATA"> -DDRIOB_DRIVE_SLEW_DATA -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIOB Drive Slew Data Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DRIVE_SLEW_DIFF"> -DDRIOB_DRIVE_SLEW_DIFF -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B64</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIOB Drive Slew Differential Strobe Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DRIVE_SLEW_CLOCK"> -DDRIOB_DRIVE_SLEW_CLOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B68</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIOB Drive Slew Clcok Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DDR_CTRL"> -DDRIOB_DDR_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B6C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIOB DDR Control Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DCI_CTRL"> -DDRIOB_DCI_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIOB DCI configuration</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DCI_CTRL"> -DDRIOB_DCI_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIOB DCI configuration</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DCI_CTRL"> -DDRIOB_DCI_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIOB DCI configuration</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_00"> -MIO_PIN_00 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000700</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_01"> -MIO_PIN_01 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000704</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_02"> -MIO_PIN_02 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000708</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 2</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_03"> -MIO_PIN_03 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800070C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 3</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_04"> -MIO_PIN_04 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000710</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 4</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_05"> -MIO_PIN_05 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000714</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 5</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_06"> -MIO_PIN_06 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000718</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 6</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_07"> -MIO_PIN_07 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800071C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 7</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_08"> -MIO_PIN_08 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000720</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 8</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_09"> -MIO_PIN_09 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000724</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 9</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_10"> -MIO_PIN_10 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000728</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 10</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_11"> -MIO_PIN_11 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800072C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 11</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_12"> -MIO_PIN_12 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000730</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 12</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_13"> -MIO_PIN_13 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000734</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 13</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_14"> -MIO_PIN_14 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000738</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 14</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_15"> -MIO_PIN_15 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800073C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 15</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_16"> -MIO_PIN_16 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000740</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 16</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_17"> -MIO_PIN_17 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000744</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 17</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_18"> -MIO_PIN_18 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000748</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 18</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_19"> -MIO_PIN_19 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800074C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 19</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_20"> -MIO_PIN_20 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000750</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 20</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_21"> -MIO_PIN_21 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000754</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 21</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_22"> -MIO_PIN_22 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000758</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 22</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_23"> -MIO_PIN_23 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800075C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 23</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_24"> -MIO_PIN_24 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000760</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 24</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_25"> -MIO_PIN_25 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000764</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 25</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_26"> -MIO_PIN_26 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000768</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 26</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_27"> -MIO_PIN_27 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800076C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 27</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_28"> -MIO_PIN_28 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000770</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 28</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_29"> -MIO_PIN_29 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000774</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 29</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_30"> -MIO_PIN_30 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000778</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 30</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_31"> -MIO_PIN_31 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800077C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 31</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_32"> -MIO_PIN_32 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000780</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 32</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_33"> -MIO_PIN_33 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000784</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_34"> -MIO_PIN_34 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000788</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 34</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_35"> -MIO_PIN_35 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800078C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 35</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_36"> -MIO_PIN_36 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000790</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 36</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_37"> -MIO_PIN_37 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000794</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 37</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_38"> -MIO_PIN_38 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000798</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 38</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_39"> -MIO_PIN_39 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800079C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 39</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_40"> -MIO_PIN_40 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007A0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 40</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_41"> -MIO_PIN_41 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007A4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 41</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_42"> -MIO_PIN_42 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007A8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 42</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_43"> -MIO_PIN_43 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007AC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 43</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_44"> -MIO_PIN_44 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007B0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 44</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_45"> -MIO_PIN_45 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007B4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 45</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_46"> -MIO_PIN_46 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007B8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 46</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_47"> -MIO_PIN_47 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007BC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 47</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_48"> -MIO_PIN_48 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007C0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 48</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_49"> -MIO_PIN_49 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007C4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 49</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_50"> -MIO_PIN_50 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007C8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 50</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_51"> -MIO_PIN_51 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007CC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 51</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_52"> -MIO_PIN_52 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007D0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 52</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MIO_PIN_53"> -MIO_PIN_53 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007D4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>MIO Control for Pin 53</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SD0_WP_CD_SEL"> -SD0_WP_CD_SEL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000830</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SDIO 0 WP CD select register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_LOCK"> -SLCR_LOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ps7_mio_init_data_1_0">ps7_mio_init_data_1_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<H1>SLCR SETTINGS</H1> -<H2><a name="SLCR_UNLOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_UNLOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_UNLOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UNLOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When write data contains the unlock key value of 0xDF0D, the write protection mode is disabled. All registers defined in SLCR are writeable until locked again through the SLCR_LOCK register. A read of this register always returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_UNLOCK@0XF8000008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -</TABLE> -<P> -<H1>OCM REMAPPING</H1> -<H2><a name="GPIOB_CTRL">Register (<A href=#mod___slcr> slcr </A>)GPIOB_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GPIOB_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VREF_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables VREF internal generator</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VREF_PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables internal pullup. 0 - no pullup. 1 - pullup.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLK_PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables internal pullup. 0 - no pullup. 1 - pullup.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SRSTN_PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables internal pullup. 0 - no pullup. 1 - pullup.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>GPIOB_CTRL@0XF8000B00</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>303</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>GPIOB control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>DDRIOB SETTINGS</H1> -<H2><a name="DDRIOB_ADDR0">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_ADDR0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_ADDR0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B40</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_POWER</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies DDR IOB input amp power mode. 0- low power mode. 1- high performance mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Input buffer controls. 00 - Input off, reads 0. 01 - Vref based differential reciever for SSTL, HSTL. 10 - Differential input reciever. 11- LVCMOS reviever.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_UPDATE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri State Termination Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCR_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update 00 - DCI Disabled 01 - DCI Drive (HSTL12_DCI) 10 - Reserved 11 - DCI Termination (SSTL15_T_DCI)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0 -ibuf is always enabled 1 - use ibuf_disable_in_to control enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use dynamic_dci_ts to control dci 0 - termination enabled 1 - use 'dynamic_dci_ts' control termination</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OUTPUT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables output mode to enable output ties to 00 - ibuf 01 - reserved 10 - reserved 11 - obuf</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>enables pullup on output 0 - no pullup 1 - pullup enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_ADDR0@0XF8000B40</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRIOB Address 0 Configuartion Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_ADDR1">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_ADDR1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_ADDR1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B44</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_POWER</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies DDR IOB input amp power mode. 0- low power mode. 1- high performance mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Input buffer controls. 00 - Input off, reads 0. 01 - Vref based differential reciever for SSTL, HSTL. 10 - Differential input reciever. 11- LVCMOS reviever.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_UPDATE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri State Termination Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCR_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update 00 - DCI Disabled 01 - DCI Drive (HSTL12_DCI) 10 - Reserved 11 - DCI Termination (SSTL15_T_DCI)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0 -ibuf is always enabled 1 - use ibuf_disable_in_to control enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use dynamic_dci_ts to control dci 0 - termination enabled 1 - use 'dynamic_dci_ts' control termination</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OUTPUT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables output mode to enable output ties to 00 - ibuf 01 - reserved 10 - reserved 11 - obuf</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>enables pullup on output 0 - no pullup 1 - pullup enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_ADDR1@0XF8000B44</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRIOB Address 1 Configuration Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DATA0">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DATA0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DATA0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B48</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_POWER</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies DDR IOB input amp power mode. 0- low power mode. 1- high performance mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Input buffer controls. 00 - Input off, reads 0. 01 - Vref based differential reciever for SSTL, HSTL. 10 - Differential input reciever. 11- LVCMOS reviever.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_UPDATE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri State Termination Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCR_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update 00 - DCI Disabled 01 - DCI Drive (HSTL12_DCI) 10 - Reserved 11 - DCI Termination (SSTL15_T_DCI)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0 -ibuf is always enabled 1 - use ibuf_disable_in_to control enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use dynamic_dci_ts to control dci 0 - termination enabled 1 - use 'dynamic_dci_ts' control termination</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OUTPUT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables output mode to enable output ties to 00 - ibuf 01 - reserved 10 - reserved 11 - obuf</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>enables pullup on output 0 - no pullup 1 - pullup enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DATA0@0XF8000B48</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>672</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRIOB Data 0 Configuration Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DATA1">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DATA1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DATA1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B4C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_POWER</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies DDR IOB input amp power mode. 0- low power mode. 1- high performance mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Input buffer controls. 00 - Input off, reads 0. 01 - Vref based differential reciever for SSTL, HSTL. 10 - Differential input reciever. 11- LVCMOS reviever.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_UPDATE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri State Termination Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCR_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update 00 - DCI Disabled 01 - DCI Drive (HSTL12_DCI) 10 - Reserved 11 - DCI Termination (SSTL15_T_DCI)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0 -ibuf is always enabled 1 - use ibuf_disable_in_to control enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use dynamic_dci_ts to control dci 0 - termination enabled 1 - use 'dynamic_dci_ts' control termination</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OUTPUT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables output mode to enable output ties to 00 - ibuf 01 - reserved 10 - reserved 11 - obuf</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>enables pullup on output 0 - no pullup 1 - pullup enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DATA1@0XF8000B4C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>672</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRIOB Data 1 Configuration Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DIFF0">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DIFF0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DIFF0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B50</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_POWER</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies DDR IOB input amp power mode. 0- low power mode. 1- high performance mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Input buffer controls. 00 - Input off, reads 0. 01 - Vref based differential reciever for SSTL, HSTL. 10 - Differential input reciever. 11- LVCMOS reviever.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_UPDATE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri State Termination Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCR_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update 00 - DCI Disabled 01 - DCI Drive (HSTL12_DCI) 10 - Reserved 11 - DCI Termination (SSTL15_T_DCI)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0 -ibuf is always enabled 1 - use ibuf_disable_in_to control enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use dynamic_dci_ts to control dci 0 - termination enabled 1 - use 'dynamic_dci_ts' control termination</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OUTPUT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables output mode to enable output ties to 00 - ibuf 01 - reserved 10 - reserved 11 - obuf</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>enables pullup on output 0 - no pullup 1 - pullup enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DIFF0@0XF8000B50</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>674</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRIOB Differential DQS 0 Configuration Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DIFF1">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DIFF1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DIFF1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B54</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_POWER</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies DDR IOB input amp power mode. 0- low power mode. 1- high performance mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Input buffer controls. 00 - Input off, reads 0. 01 - Vref based differential reciever for SSTL, HSTL. 10 - Differential input reciever. 11- LVCMOS reviever.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_UPDATE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri State Termination Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCR_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update 00 - DCI Disabled 01 - DCI Drive (HSTL12_DCI) 10 - Reserved 11 - DCI Termination (SSTL15_T_DCI)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0 -ibuf is always enabled 1 - use ibuf_disable_in_to control enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use dynamic_dci_ts to control dci 0 - termination enabled 1 - use 'dynamic_dci_ts' control termination</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OUTPUT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables output mode to enable output ties to 00 - ibuf 01 - reserved 10 - reserved 11 - obuf</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>enables pullup on output 0 - no pullup 1 - pullup enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DIFF1@0XF8000B54</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>674</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRIOB Differential DQS 1 Configuration Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_CLOCK">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_CLOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_CLOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B58</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_POWER</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies DDR IOB input amp power mode. 0- low power mode. 1- high performance mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INP_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Input buffer controls. 00 - Input off, reads 0. 01 - Vref based differential reciever for SSTL, HSTL. 10 - Differential input reciever. 11- LVCMOS reviever.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCI_UPDATE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri State Termination Enabled 0 - disabled 1 - enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DCR_TYPE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update 00 - DCI Disabled 01 - DCI Drive (HSTL12_DCI) 10 - Reserved 11 - DCI Termination (SSTL15_T_DCI)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0 -ibuf is always enabled 1 - use ibuf_disable_in_to control enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use dynamic_dci_ts to control dci 0 - termination enabled 1 - use 'dynamic_dci_ts' control termination</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OUTPUT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables output mode to enable output ties to 00 - ibuf 01 - reserved 10 - reserved 11 - obuf</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>enables pullup on output 0 - no pullup 1 - pullup enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_CLOCK@0XF8000B58</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRIOB Differential Clock Configuration Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DRIVE_SLEW_ADDR">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DRIVE_SLEW_ADDR</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DRIVE_SLEW_ADDR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B5C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRIVE_P</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Programs the DDRIO drive strength for the P devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRIVE_N</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Programs the DDRIO drive strength for the N devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLEW_P</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Programs the DDRIO slew rate for the P devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLEW_N</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>180000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Programs the DDRIO slew rate for the N devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GTL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Test Control 000 - Normal Operation 001 : 111 - Test Mode</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RTERM</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f8000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Program the rterm</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DRIVE_SLEW_ADDR@0XF8000B5C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>18c61c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRIOB Drive Slew Address Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DRIVE_SLEW_DATA">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DRIVE_SLEW_DATA</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DRIVE_SLEW_DATA</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRIVE_P</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Programs the DDRIO drive strength for the P devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRIVE_N</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Programs the DDRIO drive strength for the N devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLEW_P</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Programs the DDRIO slew rate for the P devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLEW_N</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Programs the DDRIO slew rate for the N devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GTL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Test Control 000 - Normal Operation 001 : 111 - Test Mode</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RTERM</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f8000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Program the rterm</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DRIVE_SLEW_DATA@0XF8000B60</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>f9861c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRIOB Drive Slew Data Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DRIVE_SLEW_DIFF">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DRIVE_SLEW_DIFF</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DRIVE_SLEW_DIFF</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B64</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRIVE_P</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Programs the DDRIO drive strength for the P devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRIVE_N</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Programs the DDRIO drive strength for the N devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLEW_P</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Programs the DDRIO slew rate for the P devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLEW_N</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Programs the DDRIO slew rate for the N devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GTL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Test Control 000 - Normal Operation 001 : 111 - Test Mode</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RTERM</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f8000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Program the rterm</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DRIVE_SLEW_DIFF@0XF8000B64</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>f9861c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRIOB Drive Slew Differential Strobe Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DRIVE_SLEW_CLOCK">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DRIVE_SLEW_CLOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DRIVE_SLEW_CLOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B68</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRIVE_P</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Programs the DDRIO drive strength for the P devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRIVE_N</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Programs the DDRIO drive strength for the N devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLEW_P</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>18000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Programs the DDRIO slew rate for the P devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLEW_N</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>f80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Programs the DDRIO slew rate for the N devices</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>GTL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Test Control 000 - Normal Operation 001 : 111 - Test Mode</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RTERM</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:27</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f8000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Program the rterm</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DRIVE_SLEW_CLOCK@0XF8000B68</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>f9861c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRIOB Drive Slew Clcok Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DDR_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DDR_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DDR_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B6C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VREF_INT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables VREF internal generator</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VREF_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1e</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Specifies DDR IOB Vref generator output 0001 - VREF = 0.6V for LPDDR2 with 1.2V IO 0010 - VREF = 0.675V for LPDDR3 1.35 V IO 0100 - VREF = 0.75V for DDR3 with 1.5V IO 1000 - VREF = 0.90V for DDR2 with 1.8V IO</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VREF_EXT_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>60</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables External VREF input X0 - Disable External VREF for lower 16 bits X1 - Enable External VREF for lower 16 bits 0X - Disable External VREF for upper 16 bits 1X - Enable External VREF for upper 16 bits</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VREF_PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>180</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables VREF pull-up resistors X0 - Disable VREF pull-up for lower 16 bits X1 - Enable VREF pull-up for lower 16 bits 0X - Disable VREF pull-up for upper 16 bits 1X - Enable VREF pull-up for upper 16 bits</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>REFIO_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables VRP,VRN 0 - VRP/VRN not used 1 - VRP/VRN used as refio</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>REFIO_PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables VRP,VRN pull-up resistors 0 -no pull-up 1 - enable pull-up resistors</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DRST_B_PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables pull-up resistors 0 -no pull-up 1 - enable pull-up resistors</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CKE_PULLUP_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>14:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables pull-up resistors 0 -no pull-up 1 - enable pull-up resistors</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DDR_CTRL@0XF8000B6C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>73ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>260</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRIOB DDR Control Register</B> -</TD> -</TR> -</TABLE> -<P> -<H1>ASSERT RESET</H1> -<H2><a name="DDRIOB_DCI_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DCI_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DCI_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>At least toggle once to initialise flops in DCI system</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VRN_OUT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>VRN output value</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DCI_CTRL@0XF8000B70</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>21</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>21</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRIOB DCI configuration</B> -</TD> -</TR> -</TABLE> -<P> -<H1>DEASSERT RESET</H1> -<H2><a name="DDRIOB_DCI_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DCI_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DCI_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>At least toggle once to initialise flops in DCI system</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VRN_OUT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>VRN output value</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DCI_CTRL@0XF8000B70</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>21</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRIOB DCI configuration</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DCI_CTRL">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DCI_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DCI_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B70</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RESET</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>At least toggle once to initialise flops in DCI system</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>1 if any iob's use a terminate type, or if dci test block used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VRP_TRI</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>VRP tristate value</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VRN_TRI</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>VRN tristate value</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VRP_OUT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>VRP output value</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>VRN_OUT</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>VRN output value</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>NREF_OPT1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>NREF_OPT2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>700</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>NREF_OPT4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PREF_OPT1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1c000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PREF_OPT2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UPDATE_CONTROL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DCI Update</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INIT_COMPLETE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:21</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>test Internal to IO bank</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TST_CLK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>22:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Emulate DCI clock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TST_HLN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:23</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Emulate comparator output (VRN)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TST_HLP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>24:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Emulate comparator output (VRP)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TST_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>25:25</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Emulate Reset</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>INT_DCI_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>26:26</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Need explanation here</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DCI_CTRL@0XF8000B70</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>7ffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>823</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRIOB DCI configuration</B> -</TD> -</TR> -</TABLE> -<P> -<H1>MIO PROGRAMMING</H1> -<H2><a name="MIO_PIN_00">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_00</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_00</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000700</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= qspi_sel, Output, qspi_n_ss_out_upper- (QSPI Upper select)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= smc_cs0, Output, smc_sram_cs_n[0]- (SRAM CS0) 2= nand_cs, Output, smc_nand_cs_n- (NAND chip select) 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[0]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[0]- (GPIO bank 0) 1= Not Used 2= Not Used 3= Not Used 4= Not Used 5= Not Used 6= Not Used 7= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_00@0XF8000700</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1600</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 0</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_01">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_01</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_01</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000704</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= qspi_sel, Output, qspi_n_ss_out- (QSPI Select)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= smc_a25, Output, smc_sram_add[25]- (SRAM Address) 2= smc_cs1, Output, smc_sram_cs_n[1]- (SRAM CS1) 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[1]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[1]- (GPIO bank 0) 1= Not Used 2= Not Used 3= Not Used 4= Not Used 5= Not Used 6= Not Used 7= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_01@0XF8000704</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>702</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 1</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_02">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_02</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_02</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000708</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= qspi, Output, qspi_mo_mo0- (QSPI Databus) 1= qspi, Input, qspi_si_mi0- (QSPI Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= trace_data, Output, tracedq[8]- (Trace Port Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_clk- (SRAM Clock) 2= nand, Output, smc_nand_ale- (NAND Address Latch Enable) 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[2]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[2]- (GPIO bank 0) 1= Not Used 2= Not Used 3= Not Used 4= Not Used 5= Not Used 6= Not Used 7= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled Pull-up disabled by default as this pin is used for mode[0]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_02@0XF8000708</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>702</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 2</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_03">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_03</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_03</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800070C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= qspi, Input, qspi_mi_mi1- (QSPI Databus) 1= qspi, Output, qspi_so_mo1- (QSPI Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= trace_data, Output, tracedq[9]- (Trace Port Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Input, smc_sram_data_in[0]- (SRAM Data) = sram_nor, Output, smc_sram_data_out[0]- (SRAM Data) 2= nand, Output, smc_nand_we_b- (NAND Write Enable) 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[3]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[3]- (GPIO bank 0) 1= Not Used 2= Not Used 3= Not Used 4= Not Used 5= Not Used 6= Not Used 7= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled Pull-up disabled by default as this pin is used for mode[1]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_03@0XF800070C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>702</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 3</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_04">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_04</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_04</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000710</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= qspi, Input, qspi_mi2- (QSPI Databus) 1= qspi, Output, qspi_mo2- (QSPI Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= trace_data, Output, tracedq[10]- (Trace Port Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Input, smc_sram_data_in[1]- (SRAM Data) = sram_nor, Output, smc_sram_data_out[1]- (SRAM Data) 2= nand, Input, smc_nand_data_in[2]- (NAND Data Bus) = nand, Output, smc_nand_data_out[2]- (NAND Data Bus) 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[4]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[4]- (GPIO bank 0) 1= Not Used 2= Not Used 3= Not Used 4= Not Used 5= Not Used 6= Not Used 7= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled Pull-up disabled by default as this pin is used for mode[2]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_04@0XF8000710</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>702</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 4</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_05">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_05</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_05</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000714</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= qspi, Input, qspi_mi3- (QSPI Databus) 1= qspi, Output, qspi_mo3- (QSPI Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= trace_data, Output, tracedq[11]- (Trace Port Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Input, smc_sram_data_in[2]- (SRAM Data) = sram_nor, Output, smc_sram_data_out[2]- (SRAM Data) 2= nand, Input, smc_nand_data_in[0]- (NAND Data Bus) = nand, Output, smc_nand_data_out[0]- (NAND Data Bus) 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[5]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[5]- (GPIO bank 0) 1= Not Used 2= Not Used 3= Not Used 4= Not Used 5= Not Used 6= Not Used 7= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled Pull-up disabled by default as this pin is used for mode[3]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_05@0XF8000714</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>702</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 5</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_06">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_06</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_06</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000718</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= qspi, Output, qspi_sclk_out- (QSPI Clock)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= trace_data, Output, tracedq[12]- (Trace Port Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Input, smc_sram_data_in[3]- (SRAM Data) = sram_nor, Output, smc_sram_data_out[3]- (SRAM Data) 2= nand, Input, smc_nand_data_in[1]- (NAND Data Bus) = nand, Output, smc_nand_data_out[1]- (NAND Data Bus) 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[6]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[6]- (GPIO bank 0) 1= Not Used 2= Not Used 3= Not Used 4= Not Used 5= Not Used 6= Not Used 7= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled Pull-up disabled by default as this pin is used for mode[4]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_06@0XF8000718</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>702</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 6</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_07">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_07</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_07</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800071C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= trace_data, Output, tracedq[13]- (Trace Port Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_oe_b- (SRAM Output enable) 2= nand, Output, smc_nand_cle- (NAND Command Latch Enable) 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Output, gpio_0_pin_out[7]- (GPIO bank 0) 1= Not Used 2= Not Used 3= Not Used 4= Not Used 5= Not Used 6= Not Used 7= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled Pull-up disabled by default as this pin is used for vcfg[0]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_07@0XF800071C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 7</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_08">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_08</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_08</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000720</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= qspi, Output, qspi_clk_for_lpbk- (QSPI Clock to be fed-back)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= trace_data, Output, tracedq[14]- (Trace Port Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_we_b- (SRAM Write enable) 2= nand, Output, smc_nand_re_b- (NAND Read Enable) 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Output, gpio_0_pin_out[8]- (GPIO bank 0) 1= can1, Output, can1_phy_tx- (Can TX signal) 2= Not Used 3= Not Used 4= Not Used 5= Not Used 6= Not Used 7= ua1, Output, ua1_txd- (UART transmitter serial output)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled Pull-up disabled by default as this pin is used for vcfg[1]</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_08@0XF8000720</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>702</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 8</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_09">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_09</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_09</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000724</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= qspi, Output, qspi_sclk_out_upper- (QSPI Upper Clock)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= trace_data, Output, tracedq[15]- (Trace Port Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Input, smc_sram_data_in[6]- (SRAM Data) = sram_nor, Output, smc_sram_data_out[6]- (SRAM Data) 2= nand, Input, smc_nand_data_in[4]- (NAND Data Bus) = nand, Output, smc_nand_data_out[4]- (NAND Data Bus) 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[9]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[9]- (GPIO bank 0) 1= can1, Input, can1_phy_rx- (Can RX signal) 2= Not Used 3= Not Used 4= Not Used 5= Not Used 6= Not Used 7= ua1, Input, ua1_rxd- (UART receiver serial input)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_09@0XF8000724</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1600</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 9</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_10">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_10</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_10</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000728</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= qspi, Input, qspi_mi_upper[0]- (QSPI Upper Databus) 1= qspi, Output, qspi_mo_upper[0]- (QSPI Upper Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= trace_data, Output, tracedq[2]- (Trace Port Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Input, smc_sram_data_in[7]- (SRAM Data) = sram_nor, Output, smc_sram_data_out[7]- (SRAM Data) 2= nand, Input, smc_nand_data_in[5]- (NAND Data Bus) = nand, Output, smc_nand_data_out[5]- (NAND Data Bus) 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[10]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[10]- (GPIO bank 0) 1= can0, Input, can0_phy_rx- (Can RX signal) 2= i2c0, Input, i2c0_scl_input- (SCL signal) 2= i2c0, Output, i2c0_scl_out- (SCL signal) 3= Not Used 4= sd1, Input, sd1_data_in[0]- (4-bit Data bus) 4= sd1, Output, sd1_data_out[0]- (4-bit Data bus) 5= spi1, Output, spi1_mo- (MOSI signal) 5= spi1, Input, spi1_si- (MOSI signal) 6= Not Used 7= ua0, Input, ua0_rxd- (UART receiver serial input)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_10@0XF8000728</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1640</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 10</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_11">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_11</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_11</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800072C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= qspi, Input, qspi_mi_upper[1]- (QSPI Upper Databus) 1= qspi, Output, qspi_mo_upper[1]- (QSPI Upper Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= trace_data, Output, tracedq[3]- (Trace Port Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Input, smc_sram_data_in[4]- (SRAM Data) = sram_nor, Output, smc_sram_data_out[4]- (SRAM Data) 2= nand, Input, smc_nand_data_in[6]- (NAND Data Bus) = nand, Output, smc_nand_data_out[6]- (NAND Data Bus) 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[11]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[11]- (GPIO bank 0) 1= can0, Output, can0_phy_tx- (Can TX signal) 2= i2c0, Input, i2c0_sda_input- (SDA signal) 2= i2c0, Output, i2c0_sda_out- (SDA signal) 3= Not Used 4= sd1, Input, sd1_cmd_in- (Command Indicator) 4= sd1, Output, sd1_cmd_out- (Command Indicator) 5= spi1, Input, spi1_mi- (MISO signal) 5= spi1, Output, spi1_so- (MISO signal) 6= Not Used 7= ua0, Output, ua0_txd- (UART transmitter serial output)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_11@0XF800072C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1640</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 11</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_12">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_12</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_12</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000730</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= qspi, Input, qspi_mi_upper[2]- (QSPI Upper Databus) 1= qspi, Output, qspi_mo_upper[2]- (QSPI Upper Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= trace_ctl, Output, traceclk- (Trace Port Clock)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Input, smc_sram_wait- (SRAM Wait State indicator) 2= nand, Input, smc_nand_data_in[7]- (NAND Data Bus) = nand, Output, smc_nand_data_out[7]- (NAND Data Bus) 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[12]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[12]- (GPIO bank 0) 1= can1, Output, can1_phy_tx- (Can TX signal) 2= i2c1, Input, i2c1_scl_input- (SCL signal) 2= i2c1, Output, i2c1_scl_out- (SCL signal) 3= Not Used 4= sd1, Input, sd1_clk_in- (SDSDIO clock) 4= sd1, Output, sd1_clk_out- (SDSDIO clock) 5= spi1, Input, spi1_sclk_in- (SPI Clock) 5= spi1, Output, spi1_sclk_out- (SPI Clock) 6= Not Used 7= ua1, Output, ua1_txd- (UART transmitter serial output)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_12@0XF8000730</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1640</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 12</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_13">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_13</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_13</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000734</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= qspi, Input, qspi_mi_upper[3]- (QSPI Upper Databus) 1= qspi, Output, qspi_mo_upper[3]- (QSPI Upper Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= trace_ctl, Output, tracectl- (Trace Port Control Signal)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Input, smc_sram_data_in[5]- (SRAM Data) = sram_nor, Output, smc_sram_data_out[5]- (SRAM Data) 2= nand, Input, smc_nand_data_in[3]- (NAND Data Bus) = nand, Output, smc_nand_data_out[3]- (NAND Data Bus) 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[13]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[13]- (GPIO bank 0) 1= can1, Input, can1_phy_rx- (Can RX signal) 2= i2c1, Input, i2c1_sda_input- (SDA signal) 2= i2c1, Output, i2c1_sda_out- (SDA signal) 3= Not Used 4= sd1, Input, sd1_data_in[1]- (4-bit Data bus) 4= sd1, Output, sd1_data_out[1]- (4-bit Data bus) 5= spi1, Input, spi1_n_ss_in- (SPI Master Selects) 5= spi1, Output, spi1_n_ss_out[0]- (SPI Master Selects) 6= Not Used 7= ua1, Input, ua1_rxd- (UART receiver serial input)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_13@0XF8000734</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1640</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 13</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_14">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_14</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_14</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000738</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= trace_data, Output, tracedq[0]- (Trace Port Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Input, smc_sram_fbclk- (SRAM Feedback Clock) 2= nand, Input, smc_nand_busy- (NAND Busy) 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[14]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[14]- (GPIO bank 0) 1= can0, Input, can0_phy_rx- (Can RX signal) 2= i2c0, Input, i2c0_scl_input- (SCL signal) 2= i2c0, Output, i2c0_scl_out- (SCL signal) 3= wdt, Input, wdt_clk_in- (Watch Dog Timer Input clock) 4= sd1, Input, sd1_data_in[2]- (4-bit Data bus) 4= sd1, Output, sd1_data_out[2]- (4-bit Data bus) 5= spi1, Output, spi1_n_ss_out[1]- (SPI Master Selects) 6= Not Used 7= ua0, Input, ua0_rxd- (UART receiver serial input)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_14@0XF8000738</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1600</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 14</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_15">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_15</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_15</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800073C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= trace_data, Output, tracedq[1]- (Trace Port Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[0]- (SRAM Address) 2= Not Used 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[15]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[15]- (GPIO bank 0) 1= can0, Output, can0_phy_tx- (Can TX signal) 2= i2c0, Input, i2c0_sda_input- (SDA signal) 2= i2c0, Output, i2c0_sda_out- (SDA signal) 3= wdt, Output, wdt_rst_out- (Watch Dog Timer Output clock) 4= sd1, Input, sd1_data_in[3]- (4-bit Data bus) 4= sd1, Output, sd1_data_out[3]- (4-bit Data bus) 5= spi1, Output, spi1_n_ss_out[2]- (SPI Master Selects) 6= Not Used 7= ua0, Output, ua0_txd- (UART transmitter serial output)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>600</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_15@0XF800073C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1600</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 15</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_16">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_16</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_16</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000740</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= gem0, Output, gem0_rgmii_tx_clk- (TX RGMII clock)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= trace_data, Output, tracedq[4]- (Trace Port Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[1]- (SRAM Address) 2= nand, Input, smc_nand_data_in[8]- (NAND Data Bus) = nand, Output, smc_nand_data_out[8]- (NAND Data Bus) 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[16]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[16]- (GPIO bank 0) 1= can1, Output, can1_phy_tx- (Can TX signal) 2= i2c1, Input, i2c1_scl_input- (SCL signal) 2= i2c1, Output, i2c1_scl_out- (SCL signal) 3= Not Used 4= sd0, Input, sd0_clk_in- (SDSDIO clock) 4= sd0, Output, sd0_clk_out- (SDSDIO clock) 5= spi0, Input, spi0_sclk_in- (SPI Clock) 5= spi0, Output, spi0_sclk_out- (SPI Clock) 6= ttc1, Output, ttc1_wave_out- (TTC waveform clock) 7= ua1, Output, ua1_txd- (UART transmitter serial output)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_16@0XF8000740</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2902</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 16</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_17">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_17</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_17</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000744</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= gem0, Output, gem0_rgmii_txd[0]- (TX RGMII data)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= trace_data, Output, tracedq[5]- (Trace Port Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[2]- (SRAM Address) 2= nand, Input, smc_nand_data_in[9]- (NAND Data Bus) = nand, Output, smc_nand_data_out[9]- (NAND Data Bus) 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[17]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[17]- (GPIO bank 0) 1= can1, Input, can1_phy_rx- (Can RX signal) 2= i2c1, Input, i2c1_sda_input- (SDA signal) 2= i2c1, Output, i2c1_sda_out- (SDA signal) 3= Not Used 4= sd0, Input, sd0_cmd_in- (Command Indicator) 4= sd0, Output, sd0_cmd_out- (Command Indicator) 5= spi0, Input, spi0_mi- (MISO signal) 5= spi0, Output, spi0_so- (MISO signal) 6= ttc1, Input, ttc1_clk_in- (TTC input clock) 7= ua1, Input, ua1_rxd- (UART receiver serial input)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_17@0XF8000744</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2902</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 17</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_18">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_18</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_18</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000748</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= gem0, Output, gem0_rgmii_txd[1]- (TX RGMII data)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= trace_data, Output, tracedq[6]- (Trace Port Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[3]- (SRAM Address) 2= nand, Input, smc_nand_data_in[10]- (NAND Data Bus) = nand, Output, smc_nand_data_out[10]- (NAND Data Bus) 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[18]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[18]- (GPIO bank 0) 1= can0, Input, can0_phy_rx- (Can RX signal) 2= i2c0, Input, i2c0_scl_input- (SCL signal) 2= i2c0, Output, i2c0_scl_out- (SCL signal) 3= Not Used 4= sd0, Input, sd0_data_in[0]- (4-bit Data bus) 4= sd0, Output, sd0_data_out[0]- (4-bit Data bus) 5= spi0, Input, spi0_n_ss_in- (SPI Master Selects) 5= spi0, Output, spi0_n_ss_out[0]- (SPI Master Selects) 6= ttc0, Output, ttc0_wave_out- (TTC waveform clock) 7= ua0, Input, ua0_rxd- (UART receiver serial input)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_18@0XF8000748</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2902</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 18</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_19">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_19</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_19</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800074C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= gem0, Output, gem0_rgmii_txd[2]- (TX RGMII data)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= trace_data, Output, tracedq[7]- (Trace Port Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[4]- (SRAM Address) 2= nand, Input, smc_nand_data_in[11]- (NAND Data Bus) = nand, Output, smc_nand_data_out[11]- (NAND Data Bus) 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[19]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[19]- (GPIO bank 0) 1= can0, Output, can0_phy_tx- (Can TX signal) 2= i2c0, Input, i2c0_sda_input- (SDA signal) 2= i2c0, Output, i2c0_sda_out- (SDA signal) 3= Not Used 4= sd0, Input, sd0_data_in[1]- (4-bit Data bus) 4= sd0, Output, sd0_data_out[1]- (4-bit Data bus) 5= spi0, Output, spi0_n_ss_out[1]- (SPI Master Selects) 6= ttc0, Input, ttc0_clk_in- (TTC input clock) 7= ua0, Output, ua0_txd- (UART transmitter serial output)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_19@0XF800074C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2902</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 19</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_20">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_20</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_20</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000750</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= gem0, Output, gem0_rgmii_txd[3]- (TX RGMII data)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[5]- (SRAM Address) 2= nand, Input, smc_nand_data_in[12]- (NAND Data Bus) = nand, Output, smc_nand_data_out[12]- (NAND Data Bus) 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[20]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[20]- (GPIO bank 0) 1= can1, Output, can1_phy_tx- (Can TX signal) 2= i2c1, Input, i2c1_scl_input- (SCL signal) 2= i2c1, Output, i2c1_scl_out- (SCL signal) 3= Not Used 4= sd0, Input, sd0_data_in[2]- (4-bit Data bus) 4= sd0, Output, sd0_data_out[2]- (4-bit Data bus) 5= spi0, Output, spi0_n_ss_out[2]- (SPI Master Selects) 6= Not Used 7= ua1, Output, ua1_txd- (UART transmitter serial output)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_20@0XF8000750</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2902</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 20</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_21">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_21</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_21</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000754</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= gem0, Output, gem0_rgmii_tx_ctl- (TX RGMII control)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[6]- (SRAM Address) 2= nand, Input, smc_nand_data_in[13]- (NAND Data Bus) = nand, Output, smc_nand_data_out[13]- (NAND Data Bus) 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[21]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[21]- (GPIO bank 0) 1= can1, Input, can1_phy_rx- (Can RX signal) 2= i2c1, Input, i2c1_sda_input- (SDA signal) 2= i2c1, Output, i2c1_sda_out- (SDA signal) 3= Not Used 4= sd0, Input, sd0_data_in[3]- (4-bit Data bus) 4= sd0, Output, sd0_data_out[3]- (4-bit Data bus) 5= spi0, Output, spi0_mo- (MOSI signal) 5= spi0, Input, spi0_si- (MOSI signal) 6= Not Used 7= ua1, Input, ua1_rxd- (UART receiver serial input)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_21@0XF8000754</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2902</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 21</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_22">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_22</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_22</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000758</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= gem0, Input, gem0_rgmii_rx_clk- (RX RGMII clock)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= trace_data, Output, tracedq[2]- (Trace Port Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[7]- (SRAM Address) 2= nand, Input, smc_nand_data_in[14]- (NAND Data Bus) = nand, Output, smc_nand_data_out[14]- (NAND Data Bus) 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[22]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[22]- (GPIO bank 0) 1= can0, Input, can0_phy_rx- (Can RX signal) 2= i2c0, Input, i2c0_scl_input- (SCL signal) 2= i2c0, Output, i2c0_scl_out- (SCL signal) 3= Not Used 4= sd1, Input, sd1_data_in[0]- (4-bit Data bus) 4= sd1, Output, sd1_data_out[0]- (4-bit Data bus) 5= spi1, Output, spi1_mo- (MOSI signal) 5= spi1, Input, spi1_si- (MOSI signal) 6= Not Used 7= ua0, Input, ua0_rxd- (UART receiver serial input)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_22@0XF8000758</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>903</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 22</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_23">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_23</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_23</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800075C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= gem0, Input, gem0_rgmii_rxd[0]- (RX RGMII data)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= trace_data, Output, tracedq[3]- (Trace Port Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[8]- (SRAM Address) 2= nand, Input, smc_nand_data_in[15]- (NAND Data Bus) = nand, Output, smc_nand_data_out[15]- (NAND Data Bus) 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[23]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[23]- (GPIO bank 0) 1= can0, Output, can0_phy_tx- (Can TX signal) 2= i2c0, Input, i2c0_sda_input- (SDA signal) 2= i2c0, Output, i2c0_sda_out- (SDA signal) 3= Not Used 4= sd1, Input, sd1_cmd_in- (Command Indicator) 4= sd1, Output, sd1_cmd_out- (Command Indicator) 5= spi1, Input, spi1_mi- (MISO signal) 5= spi1, Output, spi1_so- (MISO signal) 6= Not Used 7= ua0, Output, ua0_txd- (UART transmitter serial output)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_23@0XF800075C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>903</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 23</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_24">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_24</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_24</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000760</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= gem0, Input, gem0_rgmii_rxd[1]- (RX RGMII data)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= trace_ctl, Output, traceclk- (Trace Port Clock)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[9]- (SRAM Address) 2= Not Used 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[24]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[24]- (GPIO bank 0) 1= can1, Output, can1_phy_tx- (Can TX signal) 2= i2c1, Input, i2c1_scl_input- (SCL signal) 2= i2c1, Output, i2c1_scl_out- (SCL signal) 3= Not Used 4= sd1, Input, sd1_clk_in- (SDSDIO clock) 4= sd1, Output, sd1_clk_out- (SDSDIO clock) 5= spi1, Input, spi1_sclk_in- (SPI Clock) 5= spi1, Output, spi1_sclk_out- (SPI Clock) 6= Not Used 7= ua1, Output, ua1_txd- (UART transmitter serial output)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_24@0XF8000760</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>903</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 24</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_25">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_25</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_25</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000764</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= gem0, Input, gem0_rgmii_rxd[2]- (RX RGMII data)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= trace_ctl, Output, tracectl- (Trace Port Control Signal)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[10]- (SRAM Address) 2= Not Used 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[25]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[25]- (GPIO bank 0) 1= can1, Input, can1_phy_rx- (Can RX signal) 2= i2c1, Input, i2c1_sda_input- (SDA signal) 2= i2c1, Output, i2c1_sda_out- (SDA signal) 3= Not Used 4= sd1, Input, sd1_data_in[1]- (4-bit Data bus) 4= sd1, Output, sd1_data_out[1]- (4-bit Data bus) 5= spi1, Input, spi1_n_ss_in- (SPI Master Selects) 5= spi1, Output, spi1_n_ss_out[0]- (SPI Master Selects) 6= Not Used 7= ua1, Input, ua1_rxd- (UART receiver serial input)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_25@0XF8000764</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>903</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 25</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_26">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_26</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_26</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000768</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= gem0, Input, gem0_rgmii_rxd[3]- (RX RGMII data)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= trace_data, Output, tracedq[0]- (Trace Port Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[11]- (SRAM Address) 2= Not Used 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[26]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[26]- (GPIO bank 0) 1= can0, Input, can0_phy_rx- (Can RX signal) 2= i2c0, Input, i2c0_scl_input- (SCL signal) 2= i2c0, Output, i2c0_scl_out- (SCL signal) 3= wdt, Input, wdt_clk_in- (Watch Dog Timer Input clock) 4= sd1, Input, sd1_data_in[2]- (4-bit Data bus) 4= sd1, Output, sd1_data_out[2]- (4-bit Data bus) 5= spi1, Output, spi1_n_ss_out[1]- (SPI Master Selects) 6= Not Used 7= ua0, Input, ua0_rxd- (UART receiver serial input)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_26@0XF8000768</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>903</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 26</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_27">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_27</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_27</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800076C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= gem0, Input, gem0_rgmii_rx_ctl- (RX RGMII control )</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= trace_data, Output, tracedq[1]- (Trace Port Databus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[12]- (SRAM Address) 2= Not Used 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[27]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[27]- (GPIO bank 0) 1= can0, Output, can0_phy_tx- (Can TX signal) 2= i2c0, Input, i2c0_sda_input- (SDA signal) 2= i2c0, Output, i2c0_sda_out- (SDA signal) 3= wdt, Output, wdt_rst_out- (Watch Dog Timer Output clock) 4= sd1, Input, sd1_data_in[3]- (4-bit Data bus) 4= sd1, Output, sd1_data_out[3]- (4-bit Data bus) 5= spi1, Output, spi1_n_ss_out[2]- (SPI Master Selects) 6= Not Used 7= ua0, Output, ua0_txd- (UART transmitter serial output)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_27@0XF800076C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>903</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 27</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_28">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_28</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_28</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000770</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= gem1, Output, gem1_rgmii_tx_clk- (TX RGMII clock)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= usb0, Input, usb0_ulpi_rx_data[4]- (ULPI data bus) 1= usb0, Output, usb0_ulpi_tx_data[4]- (ULPI data bus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[13]- (SRAM Address) 2= Not Used 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[28]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[28]- (GPIO bank 0) 1= can1, Output, can1_phy_tx- (Can TX signal) 2= i2c1, Input, i2c1_scl_input- (SCL signal) 2= i2c1, Output, i2c1_scl_out- (SCL signal) 3= Not Used 4= sd0, Input, sd0_clk_in- (SDSDIO clock) 4= sd0, Output, sd0_clk_out- (SDSDIO clock) 5= spi0, Input, spi0_sclk_in- (SPI Clock) 5= spi0, Output, spi0_sclk_out- (SPI Clock) 6= ttc1, Output, ttc1_wave_out- (TTC waveform clock) 7= ua1, Output, ua1_txd- (UART transmitter serial output)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_28@0XF8000770</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 28</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_29">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_29</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_29</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000774</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= gem1, Output, gem1_rgmii_txd[0]- (TX RGMII data)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= usb0, Input, usb0_ulpi_dir- (Data bus direction control)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[14]- (SRAM Address) 2= Not Used 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[29]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[29]- (GPIO bank 0) 1= can1, Input, can1_phy_rx- (Can RX signal) 2= i2c1, Input, i2c1_sda_input- (SDA signal) 2= i2c1, Output, i2c1_sda_out- (SDA signal) 3= Not Used 4= sd0, Input, sd0_cmd_in- (Command Indicator) 4= sd0, Output, sd0_cmd_out- (Command Indicator) 5= spi0, Input, spi0_mi- (MISO signal) 5= spi0, Output, spi0_so- (MISO signal) 6= ttc1, Input, ttc1_clk_in- (TTC input clock) 7= ua1, Input, ua1_rxd- (UART receiver serial input)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_29@0XF8000774</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>305</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 29</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_30">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_30</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_30</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000778</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= gem1, Output, gem1_rgmii_txd[1]- (TX RGMII data)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= usb0, Output, usb0_ulpi_stp- (Asserted to end or interrupt transfers)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[15]- (SRAM Address) 2= Not Used 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[30]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[30]- (GPIO bank 0) 1= can0, Input, can0_phy_rx- (Can RX signal) 2= i2c0, Input, i2c0_scl_input- (SCL signal) 2= i2c0, Output, i2c0_scl_out- (SCL signal) 3= Not Used 4= sd0, Input, sd0_data_in[0]- (4-bit Data bus) 4= sd0, Output, sd0_data_out[0]- (4-bit Data bus) 5= spi0, Input, spi0_n_ss_in- (SPI Master Selects) 5= spi0, Output, spi0_n_ss_out[0]- (SPI Master Selects) 6= ttc0, Output, ttc0_wave_out- (TTC waveform clock) 7= ua0, Input, ua0_rxd- (UART receiver serial input)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_30@0XF8000778</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 30</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_31">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_31</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_31</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800077C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= gem1, Output, gem1_rgmii_txd[2]- (TX RGMII data)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= usb0, Input, usb0_ulpi_nxt- (Data flow control signal from the PHY)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[16]- (SRAM Address) 2= Not Used 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio0, Input, gpio_0_pin_in[31]- (GPIO bank 0) 0= gpio0, Output, gpio_0_pin_out[31]- (GPIO bank 0) 1= can0, Output, can0_phy_tx- (Can TX signal) 2= i2c0, Input, i2c0_sda_input- (SDA signal) 2= i2c0, Output, i2c0_sda_out- (SDA signal) 3= Not Used 4= sd0, Input, sd0_data_in[1]- (4-bit Data bus) 4= sd0, Output, sd0_data_out[1]- (4-bit Data bus) 5= spi0, Output, spi0_n_ss_out[1]- (SPI Master Selects) 6= ttc0, Input, ttc0_clk_in- (TTC input clock) 7= ua0, Output, ua0_txd- (UART transmitter serial output)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_31@0XF800077C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>305</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 31</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_32">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_32</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_32</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000780</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= gem1, Output, gem1_rgmii_txd[3]- (TX RGMII data)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= usb0, Input, usb0_ulpi_rx_data[0]- (ULPI data bus) 1= usb0, Output, usb0_ulpi_tx_data[0]- (ULPI data bus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[17]- (SRAM Address) 2= Not Used 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio1, Input, gpio_1_pin_in[0]- (GPIO bank 1) 0= gpio1, Output, gpio_1_pin_out[0]- (GPIO bank 1) 1= can1, Output, can1_phy_tx- (Can TX signal) 2= i2c1, Input, i2c1_scl_input- (SCL signal) 2= i2c1, Output, i2c1_scl_out- (SCL signal) 3= Not Used 4= sd0, Input, sd0_data_in[2]- (4-bit Data bus) 4= sd0, Output, sd0_data_out[2]- (4-bit Data bus) 5= spi0, Output, spi0_n_ss_out[2]- (SPI Master Selects) 6= Not Used 7= ua1, Output, ua1_txd- (UART transmitter serial output)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_32@0XF8000780</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 32</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_33">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_33</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_33</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000784</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= gem1, Output, gem1_rgmii_tx_ctl- (TX RGMII control)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= usb0, Input, usb0_ulpi_rx_data[1]- (ULPI data bus) 1= usb0, Output, usb0_ulpi_tx_data[1]- (ULPI data bus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[18]- (SRAM Address) 2= Not Used 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio1, Input, gpio_1_pin_in[1]- (GPIO bank 1) 0= gpio1, Output, gpio_1_pin_out[1]- (GPIO bank 1) 1= can1, Input, can1_phy_rx- (Can RX signal) 2= i2c1, Input, i2c1_sda_input- (SDA signal) 2= i2c1, Output, i2c1_sda_out- (SDA signal) 3= Not Used 4= sd0, Input, sd0_data_in[3]- (4-bit Data bus) 4= sd0, Output, sd0_data_out[3]- (4-bit Data bus) 5= spi0, Output, spi0_mo- (MOSI signal) 5= spi0, Input, spi0_si- (MOSI signal) 6= Not Used 7= ua1, Input, ua1_rxd- (UART receiver serial input)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_33@0XF8000784</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 33</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_34">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_34</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_34</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000788</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= gem1, Input, gem1_rgmii_rx_clk- (RX RGMII clock)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= usb0, Input, usb0_ulpi_rx_data[2]- (ULPI data bus) 1= usb0, Output, usb0_ulpi_tx_data[2]- (ULPI data bus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[19]- (SRAM Address) 2= Not Used 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio1, Input, gpio_1_pin_in[2]- (GPIO bank 1) 0= gpio1, Output, gpio_1_pin_out[2]- (GPIO bank 1) 1= can0, Input, can0_phy_rx- (Can RX signal) 2= i2c0, Input, i2c0_scl_input- (SCL signal) 2= i2c0, Output, i2c0_scl_out- (SCL signal) 3= Not Used 4= sd1, Input, sd1_data_in[0]- (4-bit Data bus) 4= sd1, Output, sd1_data_out[0]- (4-bit Data bus) 5= spi1, Output, spi1_mo- (MOSI signal) 5= spi1, Input, spi1_si- (MOSI signal) 6= Not Used 7= ua0, Input, ua0_rxd- (UART receiver serial input)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_34@0XF8000788</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 34</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_35">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_35</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_35</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800078C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= gem1, Input, gem1_rgmii_rxd[0]- (RX RGMII data)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= usb0, Input, usb0_ulpi_rx_data[3]- (ULPI data bus) 1= usb0, Output, usb0_ulpi_tx_data[3]- (ULPI data bus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[20]- (SRAM Address) 2= Not Used 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio1, Input, gpio_1_pin_in[3]- (GPIO bank 1) 0= gpio1, Output, gpio_1_pin_out[3]- (GPIO bank 1) 1= can0, Output, can0_phy_tx- (Can TX signal) 2= i2c0, Input, i2c0_sda_input- (SDA signal) 2= i2c0, Output, i2c0_sda_out- (SDA signal) 3= Not Used 4= sd1, Input, sd1_cmd_in- (Command Indicator) 4= sd1, Output, sd1_cmd_out- (Command Indicator) 5= spi1, Input, spi1_mi- (MISO signal) 5= spi1, Output, spi1_so- (MISO signal) 6= Not Used 7= ua0, Output, ua0_txd- (UART transmitter serial output)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_35@0XF800078C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 35</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_36">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_36</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_36</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000790</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= gem1, Input, gem1_rgmii_rxd[1]- (RX RGMII data)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= usb0, Input, usb0_xcvr_clk_in- (ULPI clock) 1= usb0, Output, usb0_xcvr_clk_out- (ULPI clock)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[21]- (SRAM Address) 2= Not Used 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio1, Input, gpio_1_pin_in[4]- (GPIO bank 1) 0= gpio1, Output, gpio_1_pin_out[4]- (GPIO bank 1) 1= can1, Output, can1_phy_tx- (Can TX signal) 2= i2c1, Input, i2c1_scl_input- (SCL signal) 2= i2c1, Output, i2c1_scl_out- (SCL signal) 3= Not Used 4= sd1, Input, sd1_clk_in- (SDSDIO clock) 4= sd1, Output, sd1_clk_out- (SDSDIO clock) 5= spi1, Input, spi1_sclk_in- (SPI Clock) 5= spi1, Output, spi1_sclk_out- (SPI Clock) 6= Not Used 7= ua1, Output, ua1_txd- (UART transmitter serial output)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_36@0XF8000790</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>305</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 36</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_37">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_37</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_37</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000794</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= gem1, Input, gem1_rgmii_rxd[2]- (RX RGMII data)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= usb0, Input, usb0_ulpi_rx_data[5]- (ULPI data bus) 1= usb0, Output, usb0_ulpi_tx_data[5]- (ULPI data bus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[22]- (SRAM Address) 2= Not Used 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio1, Input, gpio_1_pin_in[5]- (GPIO bank 1) 0= gpio1, Output, gpio_1_pin_out[5]- (GPIO bank 1) 1= can1, Input, can1_phy_rx- (Can RX signal) 2= i2c1, Input, i2c1_sda_input- (SDA signal) 2= i2c1, Output, i2c1_sda_out- (SDA signal) 3= Not Used 4= sd1, Input, sd1_data_in[1]- (4-bit Data bus) 4= sd1, Output, sd1_data_out[1]- (4-bit Data bus) 5= spi1, Input, spi1_n_ss_in- (SPI Master Selects) 5= spi1, Output, spi1_n_ss_out[0]- (SPI Master Selects) 6= Not Used 7= ua1, Input, ua1_rxd- (UART receiver serial input)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_37@0XF8000794</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 37</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_38">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_38</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_38</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000798</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= gem1, Input, gem1_rgmii_rxd[3]- (RX RGMII data)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= usb0, Input, usb0_ulpi_rx_data[6]- (ULPI data bus) 1= usb0, Output, usb0_ulpi_tx_data[6]- (ULPI data bus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[23]- (SRAM Address) 2= Not Used 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio1, Input, gpio_1_pin_in[6]- (GPIO bank 1) 0= gpio1, Output, gpio_1_pin_out[6]- (GPIO bank 1) 1= can0, Input, can0_phy_rx- (Can RX signal) 2= i2c0, Input, i2c0_scl_input- (SCL signal) 2= i2c0, Output, i2c0_scl_out- (SCL signal) 3= wdt, Input, wdt_clk_in- (Watch Dog Timer Input clock) 4= sd1, Input, sd1_data_in[2]- (4-bit Data bus) 4= sd1, Output, sd1_data_out[2]- (4-bit Data bus) 5= spi1, Output, spi1_n_ss_out[1]- (SPI Master Selects) 6= Not Used 7= ua0, Input, ua0_rxd- (UART receiver serial input)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_38@0XF8000798</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 38</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_39">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_39</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_39</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF800079C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= gem1, Input, gem1_rgmii_rx_ctl- (RX RGMII control )</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= usb0, Input, usb0_ulpi_rx_data[7]- (ULPI data bus) 1= usb0, Output, usb0_ulpi_tx_data[7]- (ULPI data bus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= sram_nor, Output, smc_sram_add[24]- (SRAM Address) 2= Not Used 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio1, Input, gpio_1_pin_in[7]- (GPIO bank 1) 0= gpio1, Output, gpio_1_pin_out[7]- (GPIO bank 1) 1= can0, Output, can0_phy_tx- (Can TX signal) 2= i2c0, Input, i2c0_sda_input- (SDA signal) 2= i2c0, Output, i2c0_sda_out- (SDA signal) 3= wdt, Output, wdt_rst_out- (Watch Dog Timer Output clock) 4= sd1, Input, sd1_data_in[3]- (4-bit Data bus) 4= sd1, Output, sd1_data_out[3]- (4-bit Data bus) 5= spi1, Output, spi1_n_ss_out[2]- (SPI Master Selects) 6= Not Used 7= ua0, Output, ua0_txd- (UART transmitter serial output)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_39@0XF800079C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>304</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 39</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_40">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_40</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_40</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007A0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= usb1, Input, usb1_ulpi_rx_data[4]- (ULPI data bus) 1= usb1, Output, usb1_ulpi_tx_data[4]- (ULPI data bus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= Not Used 2= Not Used 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio1, Input, gpio_1_pin_in[8]- (GPIO bank 1) 0= gpio1, Output, gpio_1_pin_out[8]- (GPIO bank 1) 1= can1, Output, can1_phy_tx- (Can TX signal) 2= i2c1, Input, i2c1_scl_input- (SCL signal) 2= i2c1, Output, i2c1_scl_out- (SCL signal) 3= Not Used 4= sd0, Input, sd0_clk_in- (SDSDIO clock) 4= sd0, Output, sd0_clk_out- (SDSDIO clock) 5= spi0, Input, spi0_sclk_in- (SPI Clock) 5= spi0, Output, spi0_sclk_out- (SPI Clock) 6= ttc1, Output, ttc1_wave_out- (TTC waveform clock) 7= ua1, Output, ua1_txd- (UART transmitter serial output)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_40@0XF80007A0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>380</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 40</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_41">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_41</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_41</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007A4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= usb1, Input, usb1_ulpi_dir- (Data bus direction control)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= Not Used 2= Not Used 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio1, Input, gpio_1_pin_in[9]- (GPIO bank 1) 0= gpio1, Output, gpio_1_pin_out[9]- (GPIO bank 1) 1= can1, Input, can1_phy_rx- (Can RX signal) 2= i2c1, Input, i2c1_sda_input- (SDA signal) 2= i2c1, Output, i2c1_sda_out- (SDA signal) 3= Not Used 4= sd0, Input, sd0_cmd_in- (Command Indicator) 4= sd0, Output, sd0_cmd_out- (Command Indicator) 5= spi0, Input, spi0_mi- (MISO signal) 5= spi0, Output, spi0_so- (MISO signal) 6= ttc1, Input, ttc1_clk_in- (TTC input clock) 7= ua1, Input, ua1_rxd- (UART receiver serial input)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_41@0XF80007A4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>380</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 41</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_42">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_42</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_42</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007A8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= usb1, Output, usb1_ulpi_stp- (Asserted to end or interrupt transfers)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= Not Used 2= Not Used 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio1, Input, gpio_1_pin_in[10]- (GPIO bank 1) 0= gpio1, Output, gpio_1_pin_out[10]- (GPIO bank 1) 1= can0, Input, can0_phy_rx- (Can RX signal) 2= i2c0, Input, i2c0_scl_input- (SCL signal) 2= i2c0, Output, i2c0_scl_out- (SCL signal) 3= Not Used 4= sd0, Input, sd0_data_in[0]- (4-bit Data bus) 4= sd0, Output, sd0_data_out[0]- (4-bit Data bus) 5= spi0, Input, spi0_n_ss_in- (SPI Master Selects) 5= spi0, Output, spi0_n_ss_out[0]- (SPI Master Selects) 6= ttc0, Output, ttc0_wave_out- (TTC waveform clock) 7= ua0, Input, ua0_rxd- (UART receiver serial input)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_42@0XF80007A8</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>380</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 42</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_43">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_43</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_43</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007AC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= usb1, Input, usb1_ulpi_nxt- (Data flow control signal from the PHY)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= Not Used 2= Not Used 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio1, Input, gpio_1_pin_in[11]- (GPIO bank 1) 0= gpio1, Output, gpio_1_pin_out[11]- (GPIO bank 1) 1= can0, Output, can0_phy_tx- (Can TX signal) 2= i2c0, Input, i2c0_sda_input- (SDA signal) 2= i2c0, Output, i2c0_sda_out- (SDA signal) 3= Not Used 4= sd0, Input, sd0_data_in[1]- (4-bit Data bus) 4= sd0, Output, sd0_data_out[1]- (4-bit Data bus) 5= spi0, Output, spi0_n_ss_out[1]- (SPI Master Selects) 6= ttc0, Input, ttc0_clk_in- (TTC input clock) 7= ua0, Output, ua0_txd- (UART transmitter serial output)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_43@0XF80007AC</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>380</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 43</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_44">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_44</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_44</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007B0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= usb1, Input, usb1_ulpi_rx_data[0]- (ULPI data bus) 1= usb1, Output, usb1_ulpi_tx_data[0]- (ULPI data bus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= Not Used 2= Not Used 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio1, Input, gpio_1_pin_in[12]- (GPIO bank 1) 0= gpio1, Output, gpio_1_pin_out[12]- (GPIO bank 1) 1= can1, Output, can1_phy_tx- (Can TX signal) 2= i2c1, Input, i2c1_scl_input- (SCL signal) 2= i2c1, Output, i2c1_scl_out- (SCL signal) 3= Not Used 4= sd0, Input, sd0_data_in[2]- (4-bit Data bus) 4= sd0, Output, sd0_data_out[2]- (4-bit Data bus) 5= spi0, Output, spi0_n_ss_out[2]- (SPI Master Selects) 6= Not Used 7= ua1, Output, ua1_txd- (UART transmitter serial output)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_44@0XF80007B0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>380</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 44</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_45">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_45</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_45</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007B4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= usb1, Input, usb1_ulpi_rx_data[1]- (ULPI data bus) 1= usb1, Output, usb1_ulpi_tx_data[1]- (ULPI data bus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= Not Used 2= Not Used 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio1, Input, gpio_1_pin_in[13]- (GPIO bank 1) 0= gpio1, Output, gpio_1_pin_out[13]- (GPIO bank 1) 1= can1, Input, can1_phy_rx- (Can RX signal) 2= i2c1, Input, i2c1_sda_input- (SDA signal) 2= i2c1, Output, i2c1_sda_out- (SDA signal) 3= Not Used 4= sd0, Input, sd0_data_in[3]- (4-bit Data bus) 4= sd0, Output, sd0_data_out[3]- (4-bit Data bus) 5= spi0, Output, spi0_mo- (MOSI signal) 5= spi0, Input, spi0_si- (MOSI signal) 6= Not Used 7= ua1, Input, ua1_rxd- (UART receiver serial input)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_45@0XF80007B4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>380</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 45</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_46">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_46</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_46</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007B8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= usb1, Input, usb1_ulpi_rx_data[2]- (ULPI data bus) 1= usb1, Output, usb1_ulpi_tx_data[2]- (ULPI data bus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= Not Used 2= Not Used 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio1, Input, gpio_1_pin_in[14]- (GPIO bank 1) 0= gpio1, Output, gpio_1_pin_out[14]- (GPIO bank 1) 1= can0, Input, can0_phy_rx- (Can RX signal) 2= i2c0, Input, i2c0_scl_input- (SCL signal) 2= i2c0, Output, i2c0_scl_out- (SCL signal) 3= Not Used 4= sd1, Input, sd1_data_in[0]- (4-bit Data bus) 4= sd1, Output, sd1_data_out[0]- (4-bit Data bus) 5= spi1, Output, spi1_mo- (MOSI signal) 5= spi1, Input, spi1_si- (MOSI signal) 6= Not Used 7= ua0, Input, ua0_rxd- (UART receiver serial input)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_46@0XF80007B8</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>1200</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 46</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_47">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_47</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_47</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007BC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_47@0XF80007BC</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f01</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>201</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 47</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_48">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_48</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_48</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007C0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= usb1, Input, usb1_xcvr_clk_in- (ULPI Clock) 1= usb1, Output, usb1_xcvr_clk_out- (ULPI Clock)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= Not Used 2= Not Used 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio1, Input, gpio_1_pin_in[16]- (GPIO bank 1) 0= gpio1, Output, gpio_1_pin_out[16]- (GPIO bank 1) 1= can1, Output, can1_phy_tx- (Can TX signal) 2= i2c1, Input, i2c1_scl_input- (SCL signal) 2= i2c1, Output, i2c1_scl_out- (SCL signal) 3= Not Used 4= sd1, Input, sd1_clk_in- (SDSDIO clock) 4= sd1, Output, sd1_clk_out- (SDSDIO clock) 5= spi1, Input, spi1_sclk_in- (SPI Clock) 5= spi1, Output, spi1_sclk_out- (SPI Clock) 6= Not Used 7= ua1, Output, ua1_txd- (UART transmitter serial output)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_48@0XF80007C0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2e0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 48</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_49">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_49</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_49</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007C4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= usb1, Input, usb1_ulpi_rx_data[5]- (ULPI data bus) 1= usb1, Output, usb1_ulpi_tx_data[5]- (ULPI data bus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= Not Used 2= Not Used 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio1, Input, gpio_1_pin_in[17]- (GPIO bank 1) 0= gpio1, Output, gpio_1_pin_out[17]- (GPIO bank 1) 1= can1, Input, can1_phy_rx- (Can RX signal) 2= i2c1, Input, i2c1_sda_input- (SDA signal) 2= i2c1, Output, i2c1_sda_out- (SDA signal) 3= Not Used 4= sd1, Input, sd1_data_in[1]- (4-bit Data bus) 4= sd1, Output, sd1_data_out[1]- (4-bit Data bus) 5= spi1, Input, spi1_n_ss_in- (SPI Master Selects) 5= spi1, Output, spi1_n_ss_out[0]- (SPI Master Selects) 6= Not Used 7= ua1, Input, ua1_rxd- (UART receiver serial input)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_49@0XF80007C4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2e1</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 49</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_50">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_50</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_50</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007C8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= usb1, Input, usb1_ulpi_rx_data[6]- (ULPI data bus) 1= usb1, Output, usb1_ulpi_tx_data[6]- (ULPI data bus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= Not Used 2= Not Used 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio1, Input, gpio_1_pin_in[18]- (GPIO bank 1) 0= gpio1, Output, gpio_1_pin_out[18]- (GPIO bank 1) 1= can0, Input, can0_phy_rx- (Can RX signal) 2= i2c0, Input, i2c0_scl_input- (SCL signal) 2= i2c0, Output, i2c0_scl_out- (SCL signal) 3= wdt, Input, wdt_clk_in- (Watch Dog Timer Input clock) 4= sd1, Input, sd1_data_in[2]- (4-bit Data bus) 4= sd1, Output, sd1_data_out[2]- (4-bit Data bus) 5= spi1, Output, spi1_n_ss_out[1]- (SPI Master Selects) 6= Not Used 7= ua0, Input, ua0_rxd- (UART receiver serial input)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_50@0XF80007C8</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 50</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_51">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_51</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_51</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007CC</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= usb1, Input, usb1_ulpi_rx_data[7]- (ULPI data bus) 1= usb1, Output, usb1_ulpi_tx_data[7]- (ULPI data bus)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= Not Used 2= Not Used 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio1, Input, gpio_1_pin_in[19]- (GPIO bank 1) 0= gpio1, Output, gpio_1_pin_out[19]- (GPIO bank 1) 1= can0, Output, can0_phy_tx- (Can TX signal) 2= i2c0, Input, i2c0_sda_input- (SDA signal) 2= i2c0, Output, i2c0_sda_out- (SDA signal) 3= wdt, Output, wdt_rst_out- (Watch Dog Timer Output clock) 4= sd1, Input, sd1_data_in[3]- (4-bit Data bus) 4= sd1, Output, sd1_data_out[3]- (4-bit Data bus) 5= spi1, Output, spi1_n_ss_out[2]- (SPI Master Selects) 6= Not Used 7= ua0, Output, ua0_txd- (UART transmitter serial output)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_51@0XF80007CC</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 51</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_52">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_52</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_52</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007D0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= Not Used 2= Not Used 3= sdio_pow, Output, sdio0_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio1, Input, gpio_1_pin_in[20]- (GPIO bank 1) 0= gpio1, Output, gpio_1_pin_out[20]- (GPIO bank 1) 1= can1, Output, can1_phy_tx- (Can TX signal) 2= i2c1, Input, i2c1_scl_input- (SCL signal) 2= i2c1, Output, i2c1_scl_out- (SCL signal) 3= wdt, Input, wdt_clk_in- (Watch Dog Timer Input clock) 4= mdio0, Output, gem0_mdc- (MDIO Clock) 5= mdio1, Output, gem1_mdc- (MDIO Clock) 6= Not Used 7= ua1, Output, ua1_txd- (UART transmitter serial output)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_52@0XF80007D0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 52</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="MIO_PIN_53">Register (<A href=#mod___slcr> slcr </A>)MIO_PIN_53</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MIO_PIN_53</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF80007D4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TRI_ENABLE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Tri-state enable, active high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L0_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 0 Mux Select 0= Level 1 Mux Output 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L1_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 1 Mux Select 0= Level 2 Mux Output 1= Not Used</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L2_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 2 Mux Select 0= Level 3 Mux Output 1= Not Used 2= Not Used 3= sdio_pow, Output, sdio1_bus_pow- (SD card bus power)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>L3_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level 3 Mux Select 0= gpio1, Input, gpio_1_pin_in[21]- (GPIO bank 1) 0= gpio1, Output, gpio_1_pin_out[21]- (GPIO bank 1) 1= can1, Input, can1_phy_rx- (Can RX signal) 2= i2c1, Input, i2c1_sda_input- (SDA signal) 2= i2c1, Output, i2c1_sda_out- (SDA signal) 3= wdt, Output, wdt_rst_out- (Watch Dog Timer Output clock) 4= mdio0, Input, gem0_mdio_in- (MDIO Data) 4= mdio0, Output, gem0_mdio_out- (MDIO Data) 5= mdio1, Input, gem1_mdio_in- (MDIO Data) 5= mdio1, Output, gem1_mdio_out- (MDIO Data) 6= Not Used 7= ua1, Input, ua1_rxd- (UART receiver serial input)</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Speed</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the speed of the I/O when IO_Type=CMOS 0=Slow CMOS 1=Fast CMOS</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IO_Type</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>e00</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Selects the IO Type 0= LVTTL 1= LVCMOS18 2= LVCMOS25 3= LVCMOS33 4= HSTL 5-7= LVCMOS33</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PULLUP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Controls the use of a pull-up for the associated GPIOB 0= Pull-up disabled 1= Pull-up enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DisableRcvr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enables the receiver. If the IO is an output only then the receiver can be disabled and save power Only used when IO_Type=HSTL 0= Receiver Enabled 1= Receiver disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MIO_PIN_53@0XF80007D4</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>200</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>MIO Control for Pin 53</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="SD0_WP_CD_SEL">Register (<A href=#mod___slcr> slcr </A>)SD0_WP_CD_SEL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SD0_WP_CD_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000830</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SDIO0_WP_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>37</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>37</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SDIO0 WP Select. 0-53 = Selects matching MIO input however bits 7/8 are not supported and should not be used as they will conflict with the VCFG inputs. 54-63 = Selects the FMIO source</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SDIO0_CD_SEL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3f0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2f</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2f0000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SDIO0 CD Select. 0-53 = Selects matching MIO input however bits 7/8 are not supported and should not be used as they will conflict with the VCFG inputs. 54-63 = Selects the FMIO source</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SD0_WP_CD_SEL@0XF8000830</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3f003f</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>2f0037</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SDIO 0 WP CD select register</B> -</TD> -</TR> -</TABLE> -<P> -<H1>LOCK IT BACK</H1> -<H2><a name="SLCR_LOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_LOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_LOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When write data contains the lock key value of 0x767B, the write protection mode is enabled. All registers defined in SLCR are write protected until unlocked again through the SLCR_UNLOCK register. A read of this register always returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_LOCK@0XF8000004</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -</TABLE> -<P> -<H2><a name="ps7_peripherals_init_data_1_0">ps7_peripherals_init_data_1_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_UNLOCK"> -SLCR_UNLOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DATA0"> -DDRIOB_DATA0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B48</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIOB Data 0 Configuration Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DATA1"> -DDRIOB_DATA1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B4C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIOB Data 1 Configuration Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DIFF0"> -DDRIOB_DIFF0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B50</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIOB Differential DQS 0 Configuration Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DDRIOB_DIFF1"> -DDRIOB_DIFF1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B54</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>DDRIOB Differential DQS 1 Configuration Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_LOCK"> -SLCR_LOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#Baud_rate_divider_reg0"> -Baud_rate_divider_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0001034</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>baud rate divider register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#Baud_rate_gen_reg0"> -Baud_rate_gen_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0001018</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Baud rate divider register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#Control_reg0"> -Control_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0001000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART Control register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#mode_reg0"> -mode_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0001004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART Mode register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#Baud_rate_divider_reg0"> -Baud_rate_divider_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0000034</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>baud rate divider register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#Baud_rate_gen_reg0"> -Baud_rate_gen_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0000018</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Baud rate divider register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#Control_reg0"> -Control_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART Control register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#mode_reg0"> -mode_reg0 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>UART Mode register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#Config_reg"> -Config_reg -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000D000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SPI configuration register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#CTRL"> -CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8007000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Control Register : This register defines basic control registers. Some of the register bits can be locked by control bits in the LOCK Register 0x004.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#DIRM_1"> -DIRM_1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A244</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Direction mode configuration register: Configures bank 1 for direction mode, either input or output</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MASK_DATA_1_LSW"> -MASK_DATA_1_LSW -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Maskable single-word-based data access register: Mask and data access for the least significant word of this bank of GPIO pins</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#OEN_1"> -OEN_1 -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A248</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Output enable register: Configures the output enables of bank 1</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MASK_DATA_1_LSW"> -MASK_DATA_1_LSW -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Maskable single-word-based data access register: Mask and data access for the least significant word of this bank of GPIO pins</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#MASK_DATA_1_LSW"> -MASK_DATA_1_LSW -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Maskable single-word-based data access register: Mask and data access for the least significant word of this bank of GPIO pins</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ps7_peripherals_init_data_1_0">ps7_peripherals_init_data_1_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<H1>SLCR SETTINGS</H1> -<H2><a name="SLCR_UNLOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_UNLOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_UNLOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UNLOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When write data contains the unlock key value of 0xDF0D, the write protection mode is disabled. All registers defined in SLCR are writeable until locked again through the SLCR_LOCK register. A read of this register always returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_UNLOCK@0XF8000008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -</TABLE> -<P> -<H1>DDR TERM/IBUF_DISABLE_MODE SETTINGS</H1> -<H2><a name="DDRIOB_DATA0">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DATA0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DATA0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B48</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0 -ibuf is always enabled 1 - use ibuf_disable_in_to control enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use dynamic_dci_ts to control dci 0 - termination enabled 1 - use 'dynamic_dci_ts' control termination</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DATA0@0XF8000B48</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>180</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>180</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRIOB Data 0 Configuration Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DATA1">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DATA1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DATA1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B4C</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0 -ibuf is always enabled 1 - use ibuf_disable_in_to control enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use dynamic_dci_ts to control dci 0 - termination enabled 1 - use 'dynamic_dci_ts' control termination</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DATA1@0XF8000B4C</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>180</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>180</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRIOB Data 1 Configuration Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DIFF0">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DIFF0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DIFF0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B50</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0 -ibuf is always enabled 1 - use ibuf_disable_in_to control enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use dynamic_dci_ts to control dci 0 - termination enabled 1 - use 'dynamic_dci_ts' control termination</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DIFF0@0XF8000B50</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>180</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>180</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRIOB Differential DQS 0 Configuration Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="DDRIOB_DIFF1">Register (<A href=#mod___slcr> slcr </A>)DDRIOB_DIFF1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DDRIOB_DIFF1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000B54</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IBUF_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use ibuf_disable_into control ibuf 0 -ibuf is always enabled 1 - use ibuf_disable_in_to control enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TERM_DISABLE_MODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Use dynamic_dci_ts to control dci 0 - termination enabled 1 - use 'dynamic_dci_ts' control termination</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DDRIOB_DIFF1@0XF8000B54</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>180</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>180</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>DDRIOB Differential DQS 1 Configuration Register</B> -</TD> -</TR> -</TABLE> -<P> -<H1>LOCK IT BACK</H1> -<H2><a name="SLCR_LOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_LOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_LOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When write data contains the lock key value of 0x767B, the write protection mode is enabled. All registers defined in SLCR are write protected until unlocked again through the SLCR_UNLOCK register. A read of this register always returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_LOCK@0XF8000004</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -<H1>SRAM/NOR SET OPMODE</H1> -<H1>UART REGISTERS</H1> -<H2><a name="Baud_rate_divider_reg0">Register (<A href=#mod___slcr> slcr </A>)Baud_rate_divider_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Baud_rate_divider_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0001034</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>BDIV</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Baud rate divider value 0 - 3: ignored 4 - 255: Baud rate</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>Baud_rate_divider_reg0@0XE0001034</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>6</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>baud rate divider register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="Baud_rate_gen_reg0">Register (<A href=#mod___slcr> slcr </A>)Baud_rate_gen_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Baud_rate_gen_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0001018</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CD</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Baud Rate Clock Divisor Value 0 = Disables baud_sample 1 = Clock divisor bypass 2 - 65535 = baud_sample value</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>Baud_rate_gen_reg0@0XE0001018</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>7c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Baud rate divider register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="Control_reg0">Register (<A href=#mod___slcr> slcr </A>)Control_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Control_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0001000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>STPBRK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Stop transmitter break. 1 = stop transmission of the break.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>STTBRK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Start transmitter break 1 = start to transmit a break. Can only be set if STPBRK (Stop transmitter break) is not high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RSTTO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Restart receiver timeout counter 1 = receiver timeout counter is restarted</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TXDIS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Transmit disable. 1, the transmitter is disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TXEN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Transmit enable. 1, the transmitter is enabled, provided the TXDIS field is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RXDIS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Receive disable. 1= receiver is enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RXEN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Receive enable. 1=the receiver logic is enabled, provided RXDIS field is set to 0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TXRES</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Software reset for TX data path. 1=the transmitter logic is reset and all pending transmitter data is discarded self clear</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RXRES</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Software reset for RX data path 1=receiver logic is reset and all pending receiver data is discarded self clear</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>Control_reg0@0XE0001000</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>17</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>UART Control register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="mode_reg0">Register (<A href=#mod___slcr> slcr </A>)mode_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>mode_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0001004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IRMODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable IrDA mode 0 : Default UART mode 1 : Enable IrDA mode</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UCLKEN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>External uart_clk source select 0 : APB clock, pclk 1 : a user-defined clock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHMODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>300</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Channel mode 00 = normal 01 = automatic cho 10 = local loopback 11 = remote loopback</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>NBSTOP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of stop bits 00 = 1 stop bit 01 = 1.5 stop bits 10 = 2 stop bits 11 = reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PAR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>38</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Parity type select. 000 = even parity 001 = odd parity 010 = forced to 0 parity (space) 011 = forced to 1 parity (mark) 1xx = no parity</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Character length select 11 = 6 bits 10 = 7 bits 01 / 00 = 8 bits</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>clock source select 1 = clock source is uart_clk/8 0 = clock source is uart_clk</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>mode_reg0@0XE0001004</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>UART Mode register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="Baud_rate_divider_reg0">Register (<A href=#mod___slcr> slcr </A>)Baud_rate_divider_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Baud_rate_divider_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0000034</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>BDIV</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Baud rate divider value 0 - 3: ignored 4 - 255: Baud rate</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>Baud_rate_divider_reg0@0XE0000034</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>6</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>baud rate divider register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="Baud_rate_gen_reg0">Register (<A href=#mod___slcr> slcr </A>)Baud_rate_gen_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Baud_rate_gen_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0000018</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CD</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>7c</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Baud Rate Clock Divisor Value 0 = Disables baud_sample 1 = Clock divisor bypass 2 - 65535 = baud_sample value</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>Baud_rate_gen_reg0@0XE0000018</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>7c</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Baud rate divider register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="Control_reg0">Register (<A href=#mod___slcr> slcr </A>)Control_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Control_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>STPBRK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Stop transmitter break. 1 = stop transmission of the break.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>STTBRK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:7</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Start transmitter break 1 = start to transmit a break. Can only be set if STPBRK (Stop transmitter break) is not high.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RSTTO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>6:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>40</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Restart receiver timeout counter 1 = receiver timeout counter is restarted</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TXDIS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:5</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Transmit disable. 1, the transmitter is disabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TXEN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Transmit enable. 1, the transmitter is enabled, provided the TXDIS field is set to 0.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RXDIS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Receive disable. 1= receiver is enabled</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RXEN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Receive enable. 1=the receiver logic is enabled, provided RXDIS field is set to 0</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>TXRES</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Software reset for TX data path. 1=the transmitter logic is reset and all pending transmitter data is discarded self clear</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>RXRES</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Software reset for RX data path 1=receiver logic is reset and all pending receiver data is discarded self clear</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>Control_reg0@0XE0000000</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>1ff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>17</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>UART Control register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="mode_reg0">Register (<A href=#mod___slcr> slcr </A>)mode_reg0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>mode_reg0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE0000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>IRMODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable IrDA mode 0 : Default UART mode 1 : Enable IrDA mode</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UCLKEN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>External uart_clk source select 0 : APB clock, pclk 1 : a user-defined clock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHMODE</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>300</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Channel mode 00 = normal 01 = automatic cho 10 = local loopback 11 = remote loopback</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>NBSTOP</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Number of stop bits 00 = 1 stop bit 01 = 1.5 stop bits 10 = 2 stop bits 11 = reserved</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PAR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>5:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>38</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Parity type select. 000 = even parity 001 = odd parity 010 = forced to 0 parity (space) 011 = forced to 1 parity (mark) 1xx = no parity</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CHRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>6</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Character length select 11 = 6 bits 10 = 7 bits 01 / 00 = 8 bits</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CLKS</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>clock source select 1 = clock source is uart_clk/8 0 = clock source is uart_clk</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>mode_reg0@0XE0000004</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>fff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>20</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>UART Mode register</B> -</TD> -</TR> -</TABLE> -<P> -<H1>QSPI REGISTERS</H1> -<H2><a name="Config_reg">Register (<A href=#mod___slcr> slcr </A>)Config_reg</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Config_reg</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000D000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>Holdb_dr</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:19</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>80000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Holdb and WPn pins are driven in normal/fast read or dual output/io read by the controller, if set, else external pull-high is required. Both pins are always driven by the controller in quad mode.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>Config_reg@0XE000D000</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>80000</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>80000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SPI configuration register</B> -</TD> -</TR> -</TABLE> -<P> -<H1>PL POWER ON RESET REGISTERS</H1> -<H2><a name="CTRL">Register (<A href=#mod___slcr> slcr </A>)CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8007000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>PCFG_POR_CNT_4K</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>29:29</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>This is to indicate to the FPGA fabric what timer to use 0 - use 64K timer 1 - use 4K timer</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>CTRL@0XF8007000</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>20000000</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Control Register : This register defines basic control registers. Some of the register bits can be locked by control bits in the LOCK Register 0x004.</B> -</TD> -</TR> -</TABLE> -<P> -<H1>SMC TIMING CALCULATION REGISTER UPDATE</H1> -<H1>NAND SET CYCLE</H1> -<H1>OPMODE</H1> -<H1>DIRECT COMMAND</H1> -<H1>SRAM/NOR CS0 SET CYCLE</H1> -<H1>DIRECT COMMAND</H1> -<H1>NOR CS0 BASE ADDRESS</H1> -<H1>SRAM/NOR CS1 SET CYCLE</H1> -<H1>DIRECT COMMAND</H1> -<H1>NOR CS1 BASE ADDRESS</H1> -<H1>USB RESET</H1> -<H1>USB0 RESET</H1> -<H1>DIR MODE BANK 0</H1> -<H1>DIR MODE BANK 1</H1> -<H2><a name="DIRM_1">Register (<A href=#mod___slcr> slcr </A>)DIRM_1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIRM_1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A244</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DIRECTION_1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3fffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Direction mode for bank 1 0 = input 1 = output Each bit configures the corresponding pin within the 32-bit bank</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>DIRM_1@0XE000A244</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>4000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Direction mode configuration register: Configures bank 1 for direction mode, either input or output</B> -</TD> -</TR> -</TABLE> -<P> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H2><a name="MASK_DATA_1_LSW">Register (<A href=#mod___slcr> slcr </A>)MASK_DATA_1_LSW</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MASK_DATA_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MASK_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>bfff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>bfff0000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Mask values to be applied on writes to the corresponding GPIO pins 0 = pin value is updated 1 = pin is masked Each bit controls the corresponding pin within the 16-bit half-bank Write Only, Read back as zero</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DATA_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Data values read from or written to the corresponding GPIO pins Each bit controls the corresponding pin within the 16-bit half-bank</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MASK_DATA_1_LSW@0XE000A008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>bfff4000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Maskable single-word-based data access register: Mask and data access for the least significant word of this bank of GPIO pins</B> -</TD> -</TR> -</TABLE> -<P> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>OUTPUT ENABLE BANK 0</H1> -<H1>OUTPUT ENABLE BANK 1</H1> -<H2><a name="OEN_1">Register (<A href=#mod___slcr> slcr </A>)OEN_1</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OEN_1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A248</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>OP_ENABLE_1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3fffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Output enables for bank 1 0 = disabled 1 = enabled Each bit configures the corresponding pin within the 32-bit bank</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>OEN_1@0XE000A248</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>3fffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>4000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Output enable register: Configures the output enables of bank 1</B> -</TD> -</TR> -</TABLE> -<P> -<H1>MASK_DATA_0_LSW LOW BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW LOW BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW LOW BANK [47:32]</H1> -<H2><a name="MASK_DATA_1_LSW">Register (<A href=#mod___slcr> slcr </A>)MASK_DATA_1_LSW</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MASK_DATA_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MASK_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>bfff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>bfff0000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Mask values to be applied on writes to the corresponding GPIO pins 0 = pin value is updated 1 = pin is masked Each bit controls the corresponding pin within the 16-bit half-bank Write Only, Read back as zero</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DATA_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Data values read from or written to the corresponding GPIO pins Each bit controls the corresponding pin within the 16-bit half-bank</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MASK_DATA_1_LSW@0XE000A008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>bfff0000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Maskable single-word-based data access register: Mask and data access for the least significant word of this bank of GPIO pins</B> -</TD> -</TR> -</TABLE> -<P> -<H1>MASK_DATA_1_MSW LOW BANK [53:48]</H1> -<H1>ADD 1 MS DELAY</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H2><a name="MASK_DATA_1_LSW">Register (<A href=#mod___slcr> slcr </A>)MASK_DATA_1_LSW</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MASK_DATA_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XE000A008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>MASK_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>bfff</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>bfff0000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Mask values to be applied on writes to the corresponding GPIO pins 0 = pin value is updated 1 = pin is masked Each bit controls the corresponding pin within the 16-bit half-bank Write Only, Read back as zero</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>DATA_1_LSW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>4000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Data values read from or written to the corresponding GPIO pins Each bit controls the corresponding pin within the 16-bit half-bank</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>MASK_DATA_1_LSW@0XE000A008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>bfff4000</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Maskable single-word-based data access register: Mask and data access for the least significant word of this bank of GPIO pins</B> -</TD> -</TR> -</TABLE> -<P> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>USB1 RESET</H1> -<H1>DIR MODE BANK 0</H1> -<H1>DIR MODE BANK 1</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>OUTPUT ENABLE BANK 0</H1> -<H1>OUTPUT ENABLE BANK 1</H1> -<H1>MASK_DATA_0_LSW LOW BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW LOW BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW LOW BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW LOW BANK [53:48]</H1> -<H1>ADD 1 MS DELAY</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>ENET RESET</H1> -<H1>ENET0 RESET</H1> -<H1>DIR MODE BANK 0</H1> -<H1>DIR MODE BANK 1</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>OUTPUT ENABLE BANK 0</H1> -<H1>OUTPUT ENABLE BANK 1</H1> -<H1>MASK_DATA_0_LSW LOW BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW LOW BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW LOW BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW LOW BANK [53:48]</H1> -<H1>ADD 1 MS DELAY</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>ENET1 RESET</H1> -<H1>DIR MODE BANK 0</H1> -<H1>DIR MODE BANK 1</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>OUTPUT ENABLE BANK 0</H1> -<H1>OUTPUT ENABLE BANK 1</H1> -<H1>MASK_DATA_0_LSW LOW BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW LOW BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW LOW BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW LOW BANK [53:48]</H1> -<H1>ADD 1 MS DELAY</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>I2C RESET</H1> -<H1>I2C0 RESET</H1> -<H1>DIR MODE GPIO BANK0</H1> -<H1>DIR MODE GPIO BANK1</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>OUTPUT ENABLE</H1> -<H1>OUTPUT ENABLE</H1> -<H1>MASK_DATA_0_LSW LOW BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW LOW BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW LOW BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW LOW BANK [53:48]</H1> -<H1>ADD 1 MS DELAY</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>I2C1 RESET</H1> -<H1>DIR MODE GPIO BANK0</H1> -<H1>DIR MODE GPIO BANK1</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>OUTPUT ENABLE</H1> -<H1>OUTPUT ENABLE</H1> -<H1>MASK_DATA_0_LSW LOW BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW LOW BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW LOW BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW LOW BANK [53:48]</H1> -<H1>ADD 1 MS DELAY</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>MASK_DATA_0_MSW HIGH BANK [31:16]</H1> -<H1>MASK_DATA_1_LSW HIGH BANK [47:32]</H1> -<H1>MASK_DATA_1_MSW HIGH BANK [53:48]</H1> -<H1>NOR CHIP SELECT</H1> -<H1>DIR MODE BANK 0</H1> -<H1>MASK_DATA_0_LSW HIGH BANK [15:0]</H1> -<H1>OUTPUT ENABLE BANK 0</H1> -</TABLE> -<P> -<H2><a name="ps7_post_config_1_0">ps7_post_config_1_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_UNLOCK"> -SLCR_UNLOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#LVL_SHFTR_EN"> -LVL_SHFTR_EN -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000900</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Level Shifters Enable</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#FPGA_RST_CTRL"> -FPGA_RST_CTRL -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000240</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>RW</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FPGA Software Reset Control</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#SLCR_LOCK"> -SLCR_LOCK -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ps7_post_config_1_0">ps7_post_config_1_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<H1>SLCR SETTINGS</H1> -<H2><a name="SLCR_UNLOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_UNLOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_UNLOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000008</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>UNLOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When write data contains the unlock key value of 0xDF0D, the write protection mode is disabled. All registers defined in SLCR are writeable until locked again through the SLCR_LOCK register. A read of this register always returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_UNLOCK@0XF8000008</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>df0d</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Unlock</B> -</TD> -</TR> -</TABLE> -<P> -<H1>ENABLING LEVEL SHIFTER</H1> -<H2><a name="LVL_SHFTR_EN">Register (<A href=#mod___slcr> slcr </A>)LVL_SHFTR_EN</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LVL_SHFTR_EN</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000900</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>USER_INP_ICT_EN_0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable level shifters for PSS user inputs to FPGA in FPGA tile 0, drives slcr_fpga_if_ctrl0[1:0].</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>USER_INP_ICT_EN_1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Enable level shifters for PSS user inputs to FPGA in FPGA tile 1, drives slcr_fpga_if_ctrl1[1:0].</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>LVL_SHFTR_EN@0XF8000900</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>f</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>f</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Level Shifters Enable</B> -</TD> -</TR> -</TABLE> -<P> -<H1>FPGA RESETS TO 0</H1> -<H2><a name="FPGA_RST_CTRL">Register (<A href=#mod___slcr> slcr </A>)FPGA_RST_CTRL</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_RST_CTRL</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000240</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_3</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:25</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>fe000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Writes are ignored, read data is always zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_ACP_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>24:24</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FPGA ACP port soft reset. 0 - No reset. 1 - ACP AXI interface reset output asserted.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_AXDS3_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>23:23</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXDS3AXI interface soft reset. On assertion of this reset, the AXDS3AXI interface reset output will be asserted. 0 - No reset. 1 - AXDS3AXI interface reset output asserted.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_AXDS2_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>22:22</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXDS2 AXI interface soft reset. On assertion of this reset, the AXDS2 AXI interface reset output will be asserted. 0 - No reset. 1 - AXDS2 AXI interface reset output asserted.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_AXDS1_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>21:21</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXDS1 AXI interface soft reset. On assertion of this reset, the AXDS1 AXI interface reset output will be asserted. 0 - No reset. 1 - AXDS1 AXI interface reset output asserted.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_AXDS0_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>20:20</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>AXDS0 AXI interface soft reset. On assertion of this reset, the AXDS0 AXI interface reset output will be asserted. 0 - No reset. 1 - AXDS0 AXI interface reset output asserted.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_2</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>19:18</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c0000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Writes are ignored, read data is always zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FSSW1_FPGA_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>17:17</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>20000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>General purpose FPGA slave interface 1 soft reset. On assertion of this reset, the FPGA slave interface 1 reset will be asserted. 0 - No reset. 1 - FPGA slave interface 1 reset is asserted.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FSSW0_FPGA_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>16:16</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>10000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>General purpose FPGA slave interface 0 soft reset. On assertion of this reset, the FPGA slave interface 0 reset will be asserted. 0 - No reset. 1 - FPGA slave interface 0 reset is asserted.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved_1</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:14</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Writes are ignored, read data is always zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_FMSW1_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>13:13</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>General purpose FPGA master interface 1 soft reset. On assertion of this reset, the FPGA master interface 1 reset will be asserted. 0 - No reset. 1 - FPGA master interface 1 reset is asserted.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_FMSW0_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>12:12</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1000</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>General purpose FPGA master interface 0 soft reset. On assertion of this reset, the FPGA master interface 0 reset will be asserted. 0 - No reset. 1 - FPGA master interface 0 reset is asserted.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_DMA3_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>11:11</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>800</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FPGA DMA 3 peripheral request soft reset. On assertion of this reset, the FPGA DMA 3 peripheral request reset output will be asserted. 0 - No reset. 1 - FPGA DMA 3 peripheral request reset output asserted.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_DMA2_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>10:10</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>400</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FPGA DMA 2 peripheral request soft reset. On assertion of this reset, the FPGA DMA 2 peripheral request reset output will be asserted. 0 - No reset. 1 - FPGA DMA 2 peripheral request reset output asserted.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_DMA1_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>9:9</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>200</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FPGA DMA 1 peripheral request soft reset. On assertion of this reset, the FPGA DMA 1 peripheral request reset output will be asserted. 0 - No reset. 1 - FPGA DMA 1 peripheral request reset output asserted.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA_DMA0_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>8:8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>100</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FPGA DMA 0 peripheral request soft reset. On assertion of this reset, the FPGA DMA 0 peripheral request reset output will be asserted. 0 - No reset. 1 - FPGA DMA 0 peripheral request reset output asserted.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>reserved</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>7:4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>f0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Reserved. Writes are ignored, read data is always zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA3_OUT_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>3:3</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>8</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FPGA3software reset. On assertion of this reset, the FPGA 3 top level reset output will be asserted. 0 - No reset. 1 - FPGA 3 top level reset output asserted.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA2_OUT_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>2:2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>4</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FPGA2 software reset. On assertion of this reset, the FPGA 2 top level reset output will be asserted. 0 - No reset. 1 - FPGA 2 top level reset output asserted.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA1_OUT_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>1:1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>2</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FPGA1 software reset. On assertion of this reset, the FPGA 1 top level reset output will be asserted. 0 - No reset. 1 - FPGA 1 top level reset output asserted.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>FPGA0_OUT_RST</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>1</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>FPGA0 software reset. On assertion of this reset, the FPGA 0 top level reset output will be asserted. 0 - No reset. 1 - FPGA 0 top level reset output asserted.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>FPGA_RST_CTRL@0XF8000240</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>0</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>FPGA Software Reset Control</B> -</TD> -</TR> -</TABLE> -<P> -<H1>AFI REGISTERS</H1> -<H1>AFI0 REGISTERS</H1> -<H1>AFI1 REGISTERS</H1> -<H1>AFI2 REGISTERS</H1> -<H1>AFI3 REGISTERS</H1> -<H1>LOCK IT BACK</H1> -<H2><a name="SLCR_LOCK">Register (<A href=#mod___slcr> slcr </A>)SLCR_LOCK</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>SLCR_LOCK</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8000004</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LOCK_KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>15:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>When write data contains the lock key value of 0x767B, the write protection mode is enabled. All registers defined in SLCR are write protected until unlocked again through the SLCR_UNLOCK register. A read of this register always returns zero.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>SLCR_LOCK@0XF8000004</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>767b</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>SLCR Write Protection Lock</B> -</TD> -</TR> -</TABLE> -<P> -</TABLE> -<P> -<H2><a name="ps7_debug_1_0">ps7_debug_1_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#LAR"> -LAR -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8898FB0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Lock Access Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#LAR"> -LAR -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8899FB0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Lock Access Register</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<A href="#LAR"> -LAR -</A> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8809FB0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>WO</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Lock Access Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="ps7_debug_1_0">ps7_debug_1_0</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFC0FF> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFC0FF> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFC0FF> -<B>Description</B> -</TD> -</TR> -<H1>CROSS TRIGGER CONFIGURATIONS</H1> -<H1>UNLOCKING CTI REGISTERS</H1> -<H2><a name="LAR">Register (<A href=#mod___slcr> slcr </A>)LAR</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LAR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8898FB0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c5acce55</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c5acce55</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write Access Code. Write behavior depends on PADDRDBG31 pin: - PADDRDBG31=0 (lower 2GB): After reset (via PRESETDBGn), CTI is locked, i.e., writes to all other registers using lower 2GB addresses are ignored. To unlock, 0xC5ACCE55 must be written this register. After the required registers are written, to lock again, write a value other than 0xC5ACCE55 to this register. - PADDRDBG31=1 (upper 2GB): CTI is unlocked when upper 2GB addresses are used to write to all the registers. However, write to this register is ignored using a upper 2GB address! Note: read from this register always returns 0, regardless of PADDRDBG31.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>LAR@0XF8898FB0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>c5acce55</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Lock Access Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="LAR">Register (<A href=#mod___slcr> slcr </A>)LAR</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LAR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8899FB0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c5acce55</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c5acce55</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write Access Code. Write behavior depends on PADDRDBG31 pin: - PADDRDBG31=0 (lower 2GB): After reset (via PRESETDBGn), CTI is locked, i.e., writes to all other registers using lower 2GB addresses are ignored. To unlock, 0xC5ACCE55 must be written this register. After the required registers are written, to lock again, write a value other than 0xC5ACCE55 to this register. - PADDRDBG31=1 (upper 2GB): CTI is unlocked when upper 2GB addresses are used to write to all the registers. However, write to this register is ignored using a upper 2GB address! Note: read from this register always returns 0, regardless of PADDRDBG31.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>LAR@0XF8899FB0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>c5acce55</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Lock Access Register</B> -</TD> -</TR> -</TABLE> -<P> -<H2><a name="LAR">Register (<A href=#mod___slcr> slcr </A>)LAR</a></H2> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#FFFF00> -<B>Register Name</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Address</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Width</B> -</TD> -<TD width=10% BGCOLOR=#FFFF00> -<B>Type</B> -</TD> -<TD width=15% BGCOLOR=#FFFF00> -<B>Reset Value</B> -</TD> -<TD width=35% BGCOLOR=#FFFF00> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>LAR</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0XF8809FB0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>32</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>rw</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>0x00000000</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>--</B> -</TD> -</TR> -</TABLE> -<P> -<TABLE border=1 cellspacing=0 BORDERCOLOR=black WIDTH=100%"> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Field Name</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Bits</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Mask</B> -</TD> -<TD width=10% BGCOLOR=#C0FFC0> -<B>Value</B> -</TD> -<TD width=15% BGCOLOR=#C0FFC0> -<B>Shifted Value</B> -</TD> -<TD width=35% BGCOLOR=#C0FFC0> -<B>Description</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#FBF5EF> -<B>KEY</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#FBF5EF> -<B>c5acce55</B> -</TD> -<TD width=15% BGCOLOR=#FBF5EF> -<B>c5acce55</B> -</TD> -<TD width=35% BGCOLOR=#FBF5EF> -<B>Write Access Code. Write behavior depends on PADDRDBG31 pin: - PADDRDBG31=0 (lower 2GB): After reset (via PRESETDBGn), CTI is locked, i.e., writes to all other registers using lower 2GB addresses are ignored. To unlock, 0xC5ACCE55 must be written this register. After the required registers are written, to lock again, write a value other than 0xC5ACCE55 to this register. - PADDRDBG31=1 (upper 2GB): CTI is unlocked when upper 2GB addresses are used to write to all the registers. However, write to this register is ignored using a upper 2GB address! Note: read from this register always returns 0, regardless of PADDRDBG31.</B> -</TD> -</TR> -<TR valign="top"> -<TD width=15% BGCOLOR=#C0C0C0> -<B>LAR@0XF8809FB0</B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>31:0</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B>ffffffff</B> -</TD> -<TD width=10% BGCOLOR=#C0C0C0> -<B></B> -</TD> -<TD width=15% BGCOLOR=#C0C0C0> -<B>c5acce55</B> -</TD> -<TD width=35% BGCOLOR=#C0C0C0> -<B>Lock Access Register</B> -</TD> -</TR> -</TABLE> -<P> -<H1>ENABLING CTI MODULES AND CHANNELS</H1> -<H1>MAPPING CPU0, CPU1 AND FTM EVENTS TO CTM CHANNELS</H1> -</TABLE> -<P> -</body> -</head> -</body> -</html> diff --git a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/ps7_init.tcl b/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/ps7_init.tcl deleted file mode 100644 index f87627a1b..000000000 --- a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/ps7_init.tcl +++ /dev/null @@ -1,862 +0,0 @@ -proc ps7_pll_init_data_3_0 {} { - mwr -force 0XF8000008 0x0000DF0D - mask_write 0XF8000110 0x003FFFF0 0x001772C0 - mask_write 0XF8000100 0x0007F000 0x0001A000 - mask_write 0XF8000100 0x00000010 0x00000010 - mask_write 0XF8000100 0x00000001 0x00000001 - mask_write 0XF8000100 0x00000001 0x00000000 - mask_poll 0XF800010C 0x00000001 - mask_write 0XF8000100 0x00000010 0x00000000 - mask_write 0XF8000120 0x1F003F30 0x1F000200 - mask_write 0XF8000114 0x003FFFF0 0x001DB2C0 - mask_write 0XF8000104 0x0007F000 0x00015000 - mask_write 0XF8000104 0x00000010 0x00000010 - mask_write 0XF8000104 0x00000001 0x00000001 - mask_write 0XF8000104 0x00000001 0x00000000 - mask_poll 0XF800010C 0x00000002 - mask_write 0XF8000104 0x00000010 0x00000000 - mask_write 0XF8000124 0xFFF00003 0x0C200003 - mask_write 0XF8000118 0x003FFFF0 0x001F42C0 - mask_write 0XF8000108 0x0007F000 0x00014000 - mask_write 0XF8000108 0x00000010 0x00000010 - mask_write 0XF8000108 0x00000001 0x00000001 - mask_write 0XF8000108 0x00000001 0x00000000 - mask_poll 0XF800010C 0x00000004 - mask_write 0XF8000108 0x00000010 0x00000000 - mwr -force 0XF8000004 0x0000767B -} -proc ps7_clock_init_data_3_0 {} { - mwr -force 0XF8000008 0x0000DF0D - mask_write 0XF8000128 0x03F03F01 0x00203401 - mask_write 0XF8000138 0x00000011 0x00000001 - mask_write 0XF8000140 0x03F03F71 0x00100801 - mask_write 0XF800014C 0x00003F31 0x00000501 - mask_write 0XF8000150 0x00003F33 0x00001401 - mask_write 0XF8000154 0x00003F33 0x00000A03 - mask_write 0XF8000168 0x00003F31 0x00000501 - mask_write 0XF8000170 0x03F03F30 0x00200500 - mask_write 0XF80001C4 0x00000001 0x00000001 - mask_write 0XF800012C 0x01FFCCCD 0x01FC044D - mwr -force 0XF8000004 0x0000767B -} -proc ps7_ddr_init_data_3_0 {} { - mask_write 0XF8006000 0x0001FFFF 0x00000080 - mask_write 0XF8006004 0x0007FFFF 0x0000107F - mask_write 0XF8006008 0x03FFFFFF 0x03C0780F - mask_write 0XF800600C 0x03FFFFFF 0x02001001 - mask_write 0XF8006010 0x03FFFFFF 0x00014001 - mask_write 0XF8006014 0x001FFFFF 0x0004151A - mask_write 0XF8006018 0xF7FFFFFF 0x44E354D2 - mask_write 0XF800601C 0xFFFFFFFF 0x720238E5 - mask_write 0XF8006020 0x7FDFFFFC 0x270872D0 - mask_write 0XF8006024 0x0FFFFFC3 0x00000000 - mask_write 0XF8006028 0x00003FFF 0x00002007 - mask_write 0XF800602C 0xFFFFFFFF 0x00000008 - mask_write 0XF8006030 0xFFFFFFFF 0x00040930 - mask_write 0XF8006034 0x13FF3FFF 0x00011674 - mask_write 0XF8006038 0x00000003 0x00000000 - mask_write 0XF800603C 0x000FFFFF 0x00000777 - mask_write 0XF8006040 0xFFFFFFFF 0xFFF00000 - mask_write 0XF8006044 0x0FFFFFFF 0x0FF66666 - mask_write 0XF8006048 0x0003F03F 0x0003C008 - mask_write 0XF8006050 0xFF0F8FFF 0x77010800 - mask_write 0XF8006058 0x00010000 0x00000000 - mask_write 0XF800605C 0x0000FFFF 0x00005003 - mask_write 0XF8006060 0x000017FF 0x0000003E - mask_write 0XF8006064 0x00021FE0 0x00020000 - mask_write 0XF8006068 0x03FFFFFF 0x00284141 - mask_write 0XF800606C 0x0000FFFF 0x00001610 - mask_write 0XF8006078 0x03FFFFFF 0x00466111 - mask_write 0XF800607C 0x000FFFFF 0x00032222 - mask_write 0XF80060A4 0xFFFFFFFF 0x10200802 - mask_write 0XF80060A8 0x0FFFFFFF 0x0670C845 - mask_write 0XF80060AC 0x000001FF 0x000001FE - mask_write 0XF80060B0 0x1FFFFFFF 0x1CFFFFFF - mask_write 0XF80060B4 0x00000200 0x00000200 - mask_write 0XF80060B8 0x01FFFFFF 0x00200066 - mask_write 0XF80060C4 0x00000003 0x00000000 - mask_write 0XF80060C8 0x000000FF 0x00000000 - mask_write 0XF80060DC 0x00000001 0x00000000 - mask_write 0XF80060F0 0x0000FFFF 0x00000000 - mask_write 0XF80060F4 0x0000000F 0x00000008 - mask_write 0XF8006114 0x000000FF 0x00000000 - mask_write 0XF8006118 0x7FFFFFCF 0x40000001 - mask_write 0XF800611C 0x7FFFFFCF 0x40000001 - mask_write 0XF8006120 0x7FFFFFCF 0x40000001 - mask_write 0XF8006124 0x7FFFFFCF 0x40000001 - mask_write 0XF800612C 0x000FFFFF 0x00023C00 - mask_write 0XF8006130 0x000FFFFF 0x00022800 - mask_write 0XF8006134 0x000FFFFF 0x00022C00 - mask_write 0XF8006138 0x000FFFFF 0x00024800 - mask_write 0XF8006140 0x000FFFFF 0x00000035 - mask_write 0XF8006144 0x000FFFFF 0x00000035 - mask_write 0XF8006148 0x000FFFFF 0x00000035 - mask_write 0XF800614C 0x000FFFFF 0x00000035 - mask_write 0XF8006154 0x000FFFFF 0x00000077 - mask_write 0XF8006158 0x000FFFFF 0x0000007C - mask_write 0XF800615C 0x000FFFFF 0x0000007C - mask_write 0XF8006160 0x000FFFFF 0x00000075 - mask_write 0XF8006168 0x001FFFFF 0x000000E4 - mask_write 0XF800616C 0x001FFFFF 0x000000DF - mask_write 0XF8006170 0x001FFFFF 0x000000E0 - mask_write 0XF8006174 0x001FFFFF 0x000000E7 - mask_write 0XF800617C 0x000FFFFF 0x000000B7 - mask_write 0XF8006180 0x000FFFFF 0x000000BC - mask_write 0XF8006184 0x000FFFFF 0x000000BC - mask_write 0XF8006188 0x000FFFFF 0x000000B5 - mask_write 0XF8006190 0x6FFFFEFE 0x00040080 - mask_write 0XF8006194 0x000FFFFF 0x0001FC82 - mask_write 0XF8006204 0xFFFFFFFF 0x00000000 - mask_write 0XF8006208 0x000703FF 0x000003FF - mask_write 0XF800620C 0x000703FF 0x000003FF - mask_write 0XF8006210 0x000703FF 0x000003FF - mask_write 0XF8006214 0x000703FF 0x000003FF - mask_write 0XF8006218 0x000F03FF 0x000003FF - mask_write 0XF800621C 0x000F03FF 0x000003FF - mask_write 0XF8006220 0x000F03FF 0x000003FF - mask_write 0XF8006224 0x000F03FF 0x000003FF - mask_write 0XF80062A8 0x00000FF5 0x00000000 - mask_write 0XF80062AC 0xFFFFFFFF 0x00000000 - mask_write 0XF80062B0 0x003FFFFF 0x00005125 - mask_write 0XF80062B4 0x0003FFFF 0x000012A6 - mask_poll 0XF8000B74 0x00002000 - mask_write 0XF8006000 0x0001FFFF 0x00000081 - mask_poll 0XF8006054 0x00000007 -} -proc ps7_mio_init_data_3_0 {} { - mwr -force 0XF8000008 0x0000DF0D - mask_write 0XF8000B00 0x00000071 0x00000001 - mask_write 0XF8000B40 0x00000FFF 0x00000600 - mask_write 0XF8000B44 0x00000FFF 0x00000600 - mask_write 0XF8000B48 0x00000FFF 0x00000672 - mask_write 0XF8000B4C 0x00000FFF 0x00000672 - mask_write 0XF8000B50 0x00000FFF 0x00000674 - mask_write 0XF8000B54 0x00000FFF 0x00000674 - mask_write 0XF8000B58 0x00000FFF 0x00000600 - mask_write 0XF8000B5C 0xFFFFFFFF 0x0018C61C - mask_write 0XF8000B60 0xFFFFFFFF 0x00F9861C - mask_write 0XF8000B64 0xFFFFFFFF 0x00F9861C - mask_write 0XF8000B68 0xFFFFFFFF 0x00F9861C - mask_write 0XF8000B6C 0x00007FFF 0x00000260 - mask_write 0XF8000B70 0x00000001 0x00000001 - mask_write 0XF8000B70 0x00000021 0x00000020 - mask_write 0XF8000B70 0x07FEFFFF 0x00000823 - mask_write 0XF8000700 0x00003FFF 0x00001600 - mask_write 0XF8000704 0x00003FFF 0x00000702 - mask_write 0XF8000708 0x00003FFF 0x00000702 - mask_write 0XF800070C 0x00003FFF 0x00000702 - mask_write 0XF8000710 0x00003FFF 0x00000702 - mask_write 0XF8000714 0x00003FFF 0x00000702 - mask_write 0XF8000718 0x00003FFF 0x00000702 - mask_write 0XF800071C 0x00003FFF 0x00000600 - mask_write 0XF8000720 0x00003FFF 0x00000702 - mask_write 0XF8000724 0x00003FFF 0x00001600 - mask_write 0XF8000728 0x00003FFF 0x00001640 - mask_write 0XF800072C 0x00003FFF 0x00001640 - mask_write 0XF8000730 0x00003FFF 0x00001640 - mask_write 0XF8000734 0x00003FFF 0x00001640 - mask_write 0XF8000738 0x00003FFF 0x00001600 - mask_write 0XF800073C 0x00003FFF 0x00001600 - mask_write 0XF8000740 0x00003FFF 0x00002902 - mask_write 0XF8000744 0x00003FFF 0x00002902 - mask_write 0XF8000748 0x00003FFF 0x00002902 - mask_write 0XF800074C 0x00003FFF 0x00002902 - mask_write 0XF8000750 0x00003FFF 0x00002902 - mask_write 0XF8000754 0x00003FFF 0x00002902 - mask_write 0XF8000758 0x00003FFF 0x00000903 - mask_write 0XF800075C 0x00003FFF 0x00000903 - mask_write 0XF8000760 0x00003FFF 0x00000903 - mask_write 0XF8000764 0x00003FFF 0x00000903 - mask_write 0XF8000768 0x00003FFF 0x00000903 - mask_write 0XF800076C 0x00003FFF 0x00000903 - mask_write 0XF8000770 0x00003FFF 0x00000304 - mask_write 0XF8000774 0x00003FFF 0x00000305 - mask_write 0XF8000778 0x00003FFF 0x00000304 - mask_write 0XF800077C 0x00003FFF 0x00000305 - mask_write 0XF8000780 0x00003FFF 0x00000304 - mask_write 0XF8000784 0x00003FFF 0x00000304 - mask_write 0XF8000788 0x00003FFF 0x00000304 - mask_write 0XF800078C 0x00003FFF 0x00000304 - mask_write 0XF8000790 0x00003FFF 0x00000305 - mask_write 0XF8000794 0x00003FFF 0x00000304 - mask_write 0XF8000798 0x00003FFF 0x00000304 - mask_write 0XF800079C 0x00003FFF 0x00000304 - mask_write 0XF80007A0 0x00003FFF 0x00000380 - mask_write 0XF80007A4 0x00003FFF 0x00000380 - mask_write 0XF80007A8 0x00003FFF 0x00000380 - mask_write 0XF80007AC 0x00003FFF 0x00000380 - mask_write 0XF80007B0 0x00003FFF 0x00000380 - mask_write 0XF80007B4 0x00003FFF 0x00000380 - mask_write 0XF80007B8 0x00003FFF 0x00001200 - mask_write 0XF80007BC 0x00003F01 0x00000201 - mask_write 0XF80007C0 0x00003FFF 0x000002E0 - mask_write 0XF80007C4 0x00003FFF 0x000002E1 - mask_write 0XF80007C8 0x00003FFF 0x00000200 - mask_write 0XF80007CC 0x00003FFF 0x00000200 - mask_write 0XF80007D0 0x00003FFF 0x00000200 - mask_write 0XF80007D4 0x00003FFF 0x00000200 - mask_write 0XF8000830 0x003F003F 0x002F0037 - mwr -force 0XF8000004 0x0000767B -} -proc ps7_peripherals_init_data_3_0 {} { - mwr -force 0XF8000008 0x0000DF0D - mask_write 0XF8000B48 0x00000180 0x00000180 - mask_write 0XF8000B4C 0x00000180 0x00000180 - mask_write 0XF8000B50 0x00000180 0x00000180 - mask_write 0XF8000B54 0x00000180 0x00000180 - mwr -force 0XF8000004 0x0000767B - mask_write 0XE0001034 0x000000FF 0x00000006 - mask_write 0XE0001018 0x0000FFFF 0x0000007C - mask_write 0XE0001000 0x000001FF 0x00000017 - mask_write 0XE0001004 0x000003FF 0x00000020 - mask_write 0XE0000034 0x000000FF 0x00000006 - mask_write 0XE0000018 0x0000FFFF 0x0000007C - mask_write 0XE0000000 0x000001FF 0x00000017 - mask_write 0XE0000004 0x000003FF 0x00000020 - mask_write 0XE000D000 0x00080000 0x00080000 - mask_write 0XF8007000 0x20000000 0x00000000 - mask_write 0XE000A244 0x003FFFFF 0x00004000 - mask_write 0XE000A008 0xFFFFFFFF 0xBFFF4000 - mask_write 0XE000A248 0x003FFFFF 0x00004000 - mask_write 0XE000A008 0xFFFFFFFF 0xBFFF0000 - mask_delay 0XF8F00200 1 - mask_write 0XE000A008 0xFFFFFFFF 0xBFFF4000 - mask_delay 0XF8F00200 1 - mask_delay 0XF8F00200 1 - mask_delay 0XF8F00200 1 - mask_delay 0XF8F00200 1 - mask_delay 0XF8F00200 1 -} -proc ps7_post_config_3_0 {} { - mwr -force 0XF8000008 0x0000DF0D - mask_write 0XF8000900 0x0000000F 0x0000000F - mask_write 0XF8000240 0xFFFFFFFF 0x00000000 - mwr -force 0XF8000004 0x0000767B -} -proc ps7_debug_3_0 {} { - mwr -force 0XF8898FB0 0xC5ACCE55 - mwr -force 0XF8899FB0 0xC5ACCE55 - mwr -force 0XF8809FB0 0xC5ACCE55 -} -proc ps7_pll_init_data_2_0 {} { - mwr -force 0XF8000008 0x0000DF0D - mask_write 0XF8000110 0x003FFFF0 0x001772C0 - mask_write 0XF8000100 0x0007F000 0x0001A000 - mask_write 0XF8000100 0x00000010 0x00000010 - mask_write 0XF8000100 0x00000001 0x00000001 - mask_write 0XF8000100 0x00000001 0x00000000 - mask_poll 0XF800010C 0x00000001 - mask_write 0XF8000100 0x00000010 0x00000000 - mask_write 0XF8000120 0x1F003F30 0x1F000200 - mask_write 0XF8000114 0x003FFFF0 0x001DB2C0 - mask_write 0XF8000104 0x0007F000 0x00015000 - mask_write 0XF8000104 0x00000010 0x00000010 - mask_write 0XF8000104 0x00000001 0x00000001 - mask_write 0XF8000104 0x00000001 0x00000000 - mask_poll 0XF800010C 0x00000002 - mask_write 0XF8000104 0x00000010 0x00000000 - mask_write 0XF8000124 0xFFF00003 0x0C200003 - mask_write 0XF8000118 0x003FFFF0 0x001F42C0 - mask_write 0XF8000108 0x0007F000 0x00014000 - mask_write 0XF8000108 0x00000010 0x00000010 - mask_write 0XF8000108 0x00000001 0x00000001 - mask_write 0XF8000108 0x00000001 0x00000000 - mask_poll 0XF800010C 0x00000004 - mask_write 0XF8000108 0x00000010 0x00000000 - mwr -force 0XF8000004 0x0000767B -} -proc ps7_clock_init_data_2_0 {} { - mwr -force 0XF8000008 0x0000DF0D - mask_write 0XF8000128 0x03F03F01 0x00203401 - mask_write 0XF8000138 0x00000011 0x00000001 - mask_write 0XF8000140 0x03F03F71 0x00100801 - mask_write 0XF800014C 0x00003F31 0x00000501 - mask_write 0XF8000150 0x00003F33 0x00001401 - mask_write 0XF8000154 0x00003F33 0x00000A03 - mask_write 0XF8000168 0x00003F31 0x00000501 - mask_write 0XF8000170 0x03F03F30 0x00200500 - mask_write 0XF80001C4 0x00000001 0x00000001 - mask_write 0XF800012C 0x01FFCCCD 0x01FC044D - mwr -force 0XF8000004 0x0000767B -} -proc ps7_ddr_init_data_2_0 {} { - mask_write 0XF8006000 0x0001FFFF 0x00000080 - mask_write 0XF8006004 0x1FFFFFFF 0x0008107F - mask_write 0XF8006008 0x03FFFFFF 0x03C0780F - mask_write 0XF800600C 0x03FFFFFF 0x02001001 - mask_write 0XF8006010 0x03FFFFFF 0x00014001 - mask_write 0XF8006014 0x001FFFFF 0x0004151A - mask_write 0XF8006018 0xF7FFFFFF 0x44E354D2 - mask_write 0XF800601C 0xFFFFFFFF 0x720238E5 - mask_write 0XF8006020 0xFFFFFFFC 0x272872D0 - mask_write 0XF8006024 0x0FFFFFFF 0x0000003C - mask_write 0XF8006028 0x00003FFF 0x00002007 - mask_write 0XF800602C 0xFFFFFFFF 0x00000008 - mask_write 0XF8006030 0xFFFFFFFF 0x00040930 - mask_write 0XF8006034 0x13FF3FFF 0x00011674 - mask_write 0XF8006038 0x00001FC3 0x00000000 - mask_write 0XF800603C 0x000FFFFF 0x00000777 - mask_write 0XF8006040 0xFFFFFFFF 0xFFF00000 - mask_write 0XF8006044 0x0FFFFFFF 0x0FF66666 - mask_write 0XF8006048 0x3FFFFFFF 0x0003C248 - mask_write 0XF8006050 0xFF0F8FFF 0x77010800 - mask_write 0XF8006058 0x0001FFFF 0x00000101 - mask_write 0XF800605C 0x0000FFFF 0x00005003 - mask_write 0XF8006060 0x000017FF 0x0000003E - mask_write 0XF8006064 0x00021FE0 0x00020000 - mask_write 0XF8006068 0x03FFFFFF 0x00284141 - mask_write 0XF800606C 0x0000FFFF 0x00001610 - mask_write 0XF8006078 0x03FFFFFF 0x00466111 - mask_write 0XF800607C 0x000FFFFF 0x00032222 - mask_write 0XF80060A0 0x00FFFFFF 0x00008000 - mask_write 0XF80060A4 0xFFFFFFFF 0x10200802 - mask_write 0XF80060A8 0x0FFFFFFF 0x0670C845 - mask_write 0XF80060AC 0x000001FF 0x000001FE - mask_write 0XF80060B0 0x1FFFFFFF 0x1CFFFFFF - mask_write 0XF80060B4 0x000007FF 0x00000200 - mask_write 0XF80060B8 0x01FFFFFF 0x00200066 - mask_write 0XF80060C4 0x00000003 0x00000000 - mask_write 0XF80060C8 0x000000FF 0x00000000 - mask_write 0XF80060DC 0x00000001 0x00000000 - mask_write 0XF80060F0 0x0000FFFF 0x00000000 - mask_write 0XF80060F4 0x0000000F 0x00000008 - mask_write 0XF8006114 0x000000FF 0x00000000 - mask_write 0XF8006118 0x7FFFFFFF 0x40000001 - mask_write 0XF800611C 0x7FFFFFFF 0x40000001 - mask_write 0XF8006120 0x7FFFFFFF 0x40000001 - mask_write 0XF8006124 0x7FFFFFFF 0x40000001 - mask_write 0XF800612C 0x000FFFFF 0x00023C00 - mask_write 0XF8006130 0x000FFFFF 0x00022800 - mask_write 0XF8006134 0x000FFFFF 0x00022C00 - mask_write 0XF8006138 0x000FFFFF 0x00024800 - mask_write 0XF8006140 0x000FFFFF 0x00000035 - mask_write 0XF8006144 0x000FFFFF 0x00000035 - mask_write 0XF8006148 0x000FFFFF 0x00000035 - mask_write 0XF800614C 0x000FFFFF 0x00000035 - mask_write 0XF8006154 0x000FFFFF 0x00000077 - mask_write 0XF8006158 0x000FFFFF 0x0000007C - mask_write 0XF800615C 0x000FFFFF 0x0000007C - mask_write 0XF8006160 0x000FFFFF 0x00000075 - mask_write 0XF8006168 0x001FFFFF 0x000000E4 - mask_write 0XF800616C 0x001FFFFF 0x000000DF - mask_write 0XF8006170 0x001FFFFF 0x000000E0 - mask_write 0XF8006174 0x001FFFFF 0x000000E7 - mask_write 0XF800617C 0x000FFFFF 0x000000B7 - mask_write 0XF8006180 0x000FFFFF 0x000000BC - mask_write 0XF8006184 0x000FFFFF 0x000000BC - mask_write 0XF8006188 0x000FFFFF 0x000000B5 - mask_write 0XF8006190 0xFFFFFFFF 0x10040080 - mask_write 0XF8006194 0x000FFFFF 0x0001FC82 - mask_write 0XF8006204 0xFFFFFFFF 0x00000000 - mask_write 0XF8006208 0x000F03FF 0x000803FF - mask_write 0XF800620C 0x000F03FF 0x000803FF - mask_write 0XF8006210 0x000F03FF 0x000803FF - mask_write 0XF8006214 0x000F03FF 0x000803FF - mask_write 0XF8006218 0x000F03FF 0x000003FF - mask_write 0XF800621C 0x000F03FF 0x000003FF - mask_write 0XF8006220 0x000F03FF 0x000003FF - mask_write 0XF8006224 0x000F03FF 0x000003FF - mask_write 0XF80062A8 0x00000FF7 0x00000000 - mask_write 0XF80062AC 0xFFFFFFFF 0x00000000 - mask_write 0XF80062B0 0x003FFFFF 0x00005125 - mask_write 0XF80062B4 0x0003FFFF 0x000012A6 - mask_poll 0XF8000B74 0x00002000 - mask_write 0XF8006000 0x0001FFFF 0x00000081 - mask_poll 0XF8006054 0x00000007 -} -proc ps7_mio_init_data_2_0 {} { - mwr -force 0XF8000008 0x0000DF0D - mask_write 0XF8000B00 0x00000303 0x00000001 - mask_write 0XF8000B40 0x00000FFF 0x00000600 - mask_write 0XF8000B44 0x00000FFF 0x00000600 - mask_write 0XF8000B48 0x00000FFF 0x00000672 - mask_write 0XF8000B4C 0x00000FFF 0x00000672 - mask_write 0XF8000B50 0x00000FFF 0x00000674 - mask_write 0XF8000B54 0x00000FFF 0x00000674 - mask_write 0XF8000B58 0x00000FFF 0x00000600 - mask_write 0XF8000B5C 0xFFFFFFFF 0x0018C61C - mask_write 0XF8000B60 0xFFFFFFFF 0x00F9861C - mask_write 0XF8000B64 0xFFFFFFFF 0x00F9861C - mask_write 0XF8000B68 0xFFFFFFFF 0x00F9861C - mask_write 0XF8000B6C 0x00007FFF 0x00000260 - mask_write 0XF8000B70 0x00000021 0x00000021 - mask_write 0XF8000B70 0x00000021 0x00000020 - mask_write 0XF8000B70 0x07FFFFFF 0x00000823 - mask_write 0XF8000700 0x00003FFF 0x00001600 - mask_write 0XF8000704 0x00003FFF 0x00000702 - mask_write 0XF8000708 0x00003FFF 0x00000702 - mask_write 0XF800070C 0x00003FFF 0x00000702 - mask_write 0XF8000710 0x00003FFF 0x00000702 - mask_write 0XF8000714 0x00003FFF 0x00000702 - mask_write 0XF8000718 0x00003FFF 0x00000702 - mask_write 0XF800071C 0x00003FFF 0x00000600 - mask_write 0XF8000720 0x00003FFF 0x00000702 - mask_write 0XF8000724 0x00003FFF 0x00001600 - mask_write 0XF8000728 0x00003FFF 0x00001640 - mask_write 0XF800072C 0x00003FFF 0x00001640 - mask_write 0XF8000730 0x00003FFF 0x00001640 - mask_write 0XF8000734 0x00003FFF 0x00001640 - mask_write 0XF8000738 0x00003FFF 0x00001600 - mask_write 0XF800073C 0x00003FFF 0x00001600 - mask_write 0XF8000740 0x00003FFF 0x00002902 - mask_write 0XF8000744 0x00003FFF 0x00002902 - mask_write 0XF8000748 0x00003FFF 0x00002902 - mask_write 0XF800074C 0x00003FFF 0x00002902 - mask_write 0XF8000750 0x00003FFF 0x00002902 - mask_write 0XF8000754 0x00003FFF 0x00002902 - mask_write 0XF8000758 0x00003FFF 0x00000903 - mask_write 0XF800075C 0x00003FFF 0x00000903 - mask_write 0XF8000760 0x00003FFF 0x00000903 - mask_write 0XF8000764 0x00003FFF 0x00000903 - mask_write 0XF8000768 0x00003FFF 0x00000903 - mask_write 0XF800076C 0x00003FFF 0x00000903 - mask_write 0XF8000770 0x00003FFF 0x00000304 - mask_write 0XF8000774 0x00003FFF 0x00000305 - mask_write 0XF8000778 0x00003FFF 0x00000304 - mask_write 0XF800077C 0x00003FFF 0x00000305 - mask_write 0XF8000780 0x00003FFF 0x00000304 - mask_write 0XF8000784 0x00003FFF 0x00000304 - mask_write 0XF8000788 0x00003FFF 0x00000304 - mask_write 0XF800078C 0x00003FFF 0x00000304 - mask_write 0XF8000790 0x00003FFF 0x00000305 - mask_write 0XF8000794 0x00003FFF 0x00000304 - mask_write 0XF8000798 0x00003FFF 0x00000304 - mask_write 0XF800079C 0x00003FFF 0x00000304 - mask_write 0XF80007A0 0x00003FFF 0x00000380 - mask_write 0XF80007A4 0x00003FFF 0x00000380 - mask_write 0XF80007A8 0x00003FFF 0x00000380 - mask_write 0XF80007AC 0x00003FFF 0x00000380 - mask_write 0XF80007B0 0x00003FFF 0x00000380 - mask_write 0XF80007B4 0x00003FFF 0x00000380 - mask_write 0XF80007B8 0x00003FFF 0x00001200 - mask_write 0XF80007BC 0x00003F01 0x00000201 - mask_write 0XF80007C0 0x00003FFF 0x000002E0 - mask_write 0XF80007C4 0x00003FFF 0x000002E1 - mask_write 0XF80007C8 0x00003FFF 0x00000200 - mask_write 0XF80007CC 0x00003FFF 0x00000200 - mask_write 0XF80007D0 0x00003FFF 0x00000200 - mask_write 0XF80007D4 0x00003FFF 0x00000200 - mask_write 0XF8000830 0x003F003F 0x002F0037 - mwr -force 0XF8000004 0x0000767B -} -proc ps7_peripherals_init_data_2_0 {} { - mwr -force 0XF8000008 0x0000DF0D - mask_write 0XF8000B48 0x00000180 0x00000180 - mask_write 0XF8000B4C 0x00000180 0x00000180 - mask_write 0XF8000B50 0x00000180 0x00000180 - mask_write 0XF8000B54 0x00000180 0x00000180 - mwr -force 0XF8000004 0x0000767B - mask_write 0XE0001034 0x000000FF 0x00000006 - mask_write 0XE0001018 0x0000FFFF 0x0000007C - mask_write 0XE0001000 0x000001FF 0x00000017 - mask_write 0XE0001004 0x00000FFF 0x00000020 - mask_write 0XE0000034 0x000000FF 0x00000006 - mask_write 0XE0000018 0x0000FFFF 0x0000007C - mask_write 0XE0000000 0x000001FF 0x00000017 - mask_write 0XE0000004 0x00000FFF 0x00000020 - mask_write 0XE000D000 0x00080000 0x00080000 - mask_write 0XF8007000 0x20000000 0x00000000 - mask_write 0XE000A244 0x003FFFFF 0x00004000 - mask_write 0XE000A008 0xFFFFFFFF 0xBFFF4000 - mask_write 0XE000A248 0x003FFFFF 0x00004000 - mask_write 0XE000A008 0xFFFFFFFF 0xBFFF0000 - mask_delay 0XF8F00200 1 - mask_write 0XE000A008 0xFFFFFFFF 0xBFFF4000 - mask_delay 0XF8F00200 1 - mask_delay 0XF8F00200 1 - mask_delay 0XF8F00200 1 - mask_delay 0XF8F00200 1 - mask_delay 0XF8F00200 1 -} -proc ps7_post_config_2_0 {} { - mwr -force 0XF8000008 0x0000DF0D - mask_write 0XF8000900 0x0000000F 0x0000000F - mask_write 0XF8000240 0xFFFFFFFF 0x00000000 - mwr -force 0XF8000004 0x0000767B -} -proc ps7_debug_2_0 {} { - mwr -force 0XF8898FB0 0xC5ACCE55 - mwr -force 0XF8899FB0 0xC5ACCE55 - mwr -force 0XF8809FB0 0xC5ACCE55 -} -proc ps7_pll_init_data_1_0 {} { - mwr -force 0XF8000008 0x0000DF0D - mask_write 0XF8000110 0x003FFFF0 0x001772C0 - mask_write 0XF8000100 0x0007F000 0x0001A000 - mask_write 0XF8000100 0x00000010 0x00000010 - mask_write 0XF8000100 0x00000001 0x00000001 - mask_write 0XF8000100 0x00000001 0x00000000 - mask_poll 0XF800010C 0x00000001 - mask_write 0XF8000100 0x00000010 0x00000000 - mask_write 0XF8000120 0x1F003F30 0x1F000200 - mask_write 0XF8000114 0x003FFFF0 0x001DB2C0 - mask_write 0XF8000104 0x0007F000 0x00015000 - mask_write 0XF8000104 0x00000010 0x00000010 - mask_write 0XF8000104 0x00000001 0x00000001 - mask_write 0XF8000104 0x00000001 0x00000000 - mask_poll 0XF800010C 0x00000002 - mask_write 0XF8000104 0x00000010 0x00000000 - mask_write 0XF8000124 0xFFF00003 0x0C200003 - mask_write 0XF8000118 0x003FFFF0 0x001F42C0 - mask_write 0XF8000108 0x0007F000 0x00014000 - mask_write 0XF8000108 0x00000010 0x00000010 - mask_write 0XF8000108 0x00000001 0x00000001 - mask_write 0XF8000108 0x00000001 0x00000000 - mask_poll 0XF800010C 0x00000004 - mask_write 0XF8000108 0x00000010 0x00000000 - mwr -force 0XF8000004 0x0000767B -} -proc ps7_clock_init_data_1_0 {} { - mwr -force 0XF8000008 0x0000DF0D - mask_write 0XF8000128 0x03F03F01 0x00203401 - mask_write 0XF8000138 0x00000011 0x00000001 - mask_write 0XF8000140 0x03F03F71 0x00100801 - mask_write 0XF800014C 0x00003F31 0x00000501 - mask_write 0XF8000150 0x00003F33 0x00001401 - mask_write 0XF8000154 0x00003F33 0x00000A03 - mask_write 0XF8000168 0x00003F31 0x00000501 - mask_write 0XF8000170 0x03F03F30 0x00200500 - mask_write 0XF80001C4 0x00000001 0x00000001 - mask_write 0XF800012C 0x01FFCCCD 0x01FC044D - mwr -force 0XF8000004 0x0000767B -} -proc ps7_ddr_init_data_1_0 {} { - mask_write 0XF8006000 0x0001FFFF 0x00000080 - mask_write 0XF8006004 0x1FFFFFFF 0x0008107F - mask_write 0XF8006008 0x03FFFFFF 0x03C0780F - mask_write 0XF800600C 0x03FFFFFF 0x02001001 - mask_write 0XF8006010 0x03FFFFFF 0x00014001 - mask_write 0XF8006014 0x001FFFFF 0x0004151A - mask_write 0XF8006018 0xF7FFFFFF 0x44E354D2 - mask_write 0XF800601C 0xFFFFFFFF 0x720238E5 - mask_write 0XF8006020 0xFFFFFFFC 0x272872D0 - mask_write 0XF8006024 0x0FFFFFFF 0x0000003C - mask_write 0XF8006028 0x00003FFF 0x00002007 - mask_write 0XF800602C 0xFFFFFFFF 0x00000008 - mask_write 0XF8006030 0xFFFFFFFF 0x00040930 - mask_write 0XF8006034 0x13FF3FFF 0x00011674 - mask_write 0XF8006038 0x00001FC3 0x00000000 - mask_write 0XF800603C 0x000FFFFF 0x00000777 - mask_write 0XF8006040 0xFFFFFFFF 0xFFF00000 - mask_write 0XF8006044 0x0FFFFFFF 0x0FF66666 - mask_write 0XF8006048 0x3FFFFFFF 0x0003C248 - mask_write 0XF8006050 0xFF0F8FFF 0x77010800 - mask_write 0XF8006058 0x0001FFFF 0x00000101 - mask_write 0XF800605C 0x0000FFFF 0x00005003 - mask_write 0XF8006060 0x000017FF 0x0000003E - mask_write 0XF8006064 0x00021FE0 0x00020000 - mask_write 0XF8006068 0x03FFFFFF 0x00284141 - mask_write 0XF800606C 0x0000FFFF 0x00001610 - mask_write 0XF80060A0 0x00FFFFFF 0x00008000 - mask_write 0XF80060A4 0xFFFFFFFF 0x10200802 - mask_write 0XF80060A8 0x0FFFFFFF 0x0670C845 - mask_write 0XF80060AC 0x000001FF 0x000001FE - mask_write 0XF80060B0 0x1FFFFFFF 0x1CFFFFFF - mask_write 0XF80060B4 0x000007FF 0x00000200 - mask_write 0XF80060B8 0x01FFFFFF 0x00200066 - mask_write 0XF80060C4 0x00000003 0x00000000 - mask_write 0XF80060C8 0x000000FF 0x00000000 - mask_write 0XF80060DC 0x00000001 0x00000000 - mask_write 0XF80060F0 0x0000FFFF 0x00000000 - mask_write 0XF80060F4 0x0000000F 0x00000008 - mask_write 0XF8006114 0x000000FF 0x00000000 - mask_write 0XF8006118 0x7FFFFFFF 0x40000001 - mask_write 0XF800611C 0x7FFFFFFF 0x40000001 - mask_write 0XF8006120 0x7FFFFFFF 0x40000001 - mask_write 0XF8006124 0x7FFFFFFF 0x40000001 - mask_write 0XF800612C 0x000FFFFF 0x00023C00 - mask_write 0XF8006130 0x000FFFFF 0x00022800 - mask_write 0XF8006134 0x000FFFFF 0x00022C00 - mask_write 0XF8006138 0x000FFFFF 0x00024800 - mask_write 0XF8006140 0x000FFFFF 0x00000035 - mask_write 0XF8006144 0x000FFFFF 0x00000035 - mask_write 0XF8006148 0x000FFFFF 0x00000035 - mask_write 0XF800614C 0x000FFFFF 0x00000035 - mask_write 0XF8006154 0x000FFFFF 0x00000077 - mask_write 0XF8006158 0x000FFFFF 0x0000007C - mask_write 0XF800615C 0x000FFFFF 0x0000007C - mask_write 0XF8006160 0x000FFFFF 0x00000075 - mask_write 0XF8006168 0x001FFFFF 0x000000E4 - mask_write 0XF800616C 0x001FFFFF 0x000000DF - mask_write 0XF8006170 0x001FFFFF 0x000000E0 - mask_write 0XF8006174 0x001FFFFF 0x000000E7 - mask_write 0XF800617C 0x000FFFFF 0x000000B7 - mask_write 0XF8006180 0x000FFFFF 0x000000BC - mask_write 0XF8006184 0x000FFFFF 0x000000BC - mask_write 0XF8006188 0x000FFFFF 0x000000B5 - mask_write 0XF8006190 0xFFFFFFFF 0x10040080 - mask_write 0XF8006194 0x000FFFFF 0x0001FC82 - mask_write 0XF8006204 0xFFFFFFFF 0x00000000 - mask_write 0XF8006208 0x000F03FF 0x000803FF - mask_write 0XF800620C 0x000F03FF 0x000803FF - mask_write 0XF8006210 0x000F03FF 0x000803FF - mask_write 0XF8006214 0x000F03FF 0x000803FF - mask_write 0XF8006218 0x000F03FF 0x000003FF - mask_write 0XF800621C 0x000F03FF 0x000003FF - mask_write 0XF8006220 0x000F03FF 0x000003FF - mask_write 0XF8006224 0x000F03FF 0x000003FF - mask_write 0XF80062A8 0x00000FF7 0x00000000 - mask_write 0XF80062AC 0xFFFFFFFF 0x00000000 - mask_write 0XF80062B0 0x003FFFFF 0x00005125 - mask_write 0XF80062B4 0x0003FFFF 0x000012A6 - mask_poll 0XF8000B74 0x00002000 - mask_write 0XF8006000 0x0001FFFF 0x00000081 - mask_poll 0XF8006054 0x00000007 -} -proc ps7_mio_init_data_1_0 {} { - mwr -force 0XF8000008 0x0000DF0D - mask_write 0XF8000B00 0x00000303 0x00000001 - mask_write 0XF8000B40 0x00000FFF 0x00000600 - mask_write 0XF8000B44 0x00000FFF 0x00000600 - mask_write 0XF8000B48 0x00000FFF 0x00000672 - mask_write 0XF8000B4C 0x00000FFF 0x00000672 - mask_write 0XF8000B50 0x00000FFF 0x00000674 - mask_write 0XF8000B54 0x00000FFF 0x00000674 - mask_write 0XF8000B58 0x00000FFF 0x00000600 - mask_write 0XF8000B5C 0xFFFFFFFF 0x0018C61C - mask_write 0XF8000B60 0xFFFFFFFF 0x00F9861C - mask_write 0XF8000B64 0xFFFFFFFF 0x00F9861C - mask_write 0XF8000B68 0xFFFFFFFF 0x00F9861C - mask_write 0XF8000B6C 0x000073FF 0x00000260 - mask_write 0XF8000B70 0x00000021 0x00000021 - mask_write 0XF8000B70 0x00000021 0x00000020 - mask_write 0XF8000B70 0x07FFFFFF 0x00000823 - mask_write 0XF8000700 0x00003FFF 0x00001600 - mask_write 0XF8000704 0x00003FFF 0x00000702 - mask_write 0XF8000708 0x00003FFF 0x00000702 - mask_write 0XF800070C 0x00003FFF 0x00000702 - mask_write 0XF8000710 0x00003FFF 0x00000702 - mask_write 0XF8000714 0x00003FFF 0x00000702 - mask_write 0XF8000718 0x00003FFF 0x00000702 - mask_write 0XF800071C 0x00003FFF 0x00000600 - mask_write 0XF8000720 0x00003FFF 0x00000702 - mask_write 0XF8000724 0x00003FFF 0x00001600 - mask_write 0XF8000728 0x00003FFF 0x00001640 - mask_write 0XF800072C 0x00003FFF 0x00001640 - mask_write 0XF8000730 0x00003FFF 0x00001640 - mask_write 0XF8000734 0x00003FFF 0x00001640 - mask_write 0XF8000738 0x00003FFF 0x00001600 - mask_write 0XF800073C 0x00003FFF 0x00001600 - mask_write 0XF8000740 0x00003FFF 0x00002902 - mask_write 0XF8000744 0x00003FFF 0x00002902 - mask_write 0XF8000748 0x00003FFF 0x00002902 - mask_write 0XF800074C 0x00003FFF 0x00002902 - mask_write 0XF8000750 0x00003FFF 0x00002902 - mask_write 0XF8000754 0x00003FFF 0x00002902 - mask_write 0XF8000758 0x00003FFF 0x00000903 - mask_write 0XF800075C 0x00003FFF 0x00000903 - mask_write 0XF8000760 0x00003FFF 0x00000903 - mask_write 0XF8000764 0x00003FFF 0x00000903 - mask_write 0XF8000768 0x00003FFF 0x00000903 - mask_write 0XF800076C 0x00003FFF 0x00000903 - mask_write 0XF8000770 0x00003FFF 0x00000304 - mask_write 0XF8000774 0x00003FFF 0x00000305 - mask_write 0XF8000778 0x00003FFF 0x00000304 - mask_write 0XF800077C 0x00003FFF 0x00000305 - mask_write 0XF8000780 0x00003FFF 0x00000304 - mask_write 0XF8000784 0x00003FFF 0x00000304 - mask_write 0XF8000788 0x00003FFF 0x00000304 - mask_write 0XF800078C 0x00003FFF 0x00000304 - mask_write 0XF8000790 0x00003FFF 0x00000305 - mask_write 0XF8000794 0x00003FFF 0x00000304 - mask_write 0XF8000798 0x00003FFF 0x00000304 - mask_write 0XF800079C 0x00003FFF 0x00000304 - mask_write 0XF80007A0 0x00003FFF 0x00000380 - mask_write 0XF80007A4 0x00003FFF 0x00000380 - mask_write 0XF80007A8 0x00003FFF 0x00000380 - mask_write 0XF80007AC 0x00003FFF 0x00000380 - mask_write 0XF80007B0 0x00003FFF 0x00000380 - mask_write 0XF80007B4 0x00003FFF 0x00000380 - mask_write 0XF80007B8 0x00003FFF 0x00001200 - mask_write 0XF80007BC 0x00003F01 0x00000201 - mask_write 0XF80007C0 0x00003FFF 0x000002E0 - mask_write 0XF80007C4 0x00003FFF 0x000002E1 - mask_write 0XF80007C8 0x00003FFF 0x00000200 - mask_write 0XF80007CC 0x00003FFF 0x00000200 - mask_write 0XF80007D0 0x00003FFF 0x00000200 - mask_write 0XF80007D4 0x00003FFF 0x00000200 - mask_write 0XF8000830 0x003F003F 0x002F0037 - mwr -force 0XF8000004 0x0000767B -} -proc ps7_peripherals_init_data_1_0 {} { - mwr -force 0XF8000008 0x0000DF0D - mask_write 0XF8000B48 0x00000180 0x00000180 - mask_write 0XF8000B4C 0x00000180 0x00000180 - mask_write 0XF8000B50 0x00000180 0x00000180 - mask_write 0XF8000B54 0x00000180 0x00000180 - mwr -force 0XF8000004 0x0000767B - mask_write 0XE0001034 0x000000FF 0x00000006 - mask_write 0XE0001018 0x0000FFFF 0x0000007C - mask_write 0XE0001000 0x000001FF 0x00000017 - mask_write 0XE0001004 0x00000FFF 0x00000020 - mask_write 0XE0000034 0x000000FF 0x00000006 - mask_write 0XE0000018 0x0000FFFF 0x0000007C - mask_write 0XE0000000 0x000001FF 0x00000017 - mask_write 0XE0000004 0x00000FFF 0x00000020 - mask_write 0XE000D000 0x00080000 0x00080000 - mask_write 0XF8007000 0x20000000 0x00000000 - mask_write 0XE000A244 0x003FFFFF 0x00004000 - mask_write 0XE000A008 0xFFFFFFFF 0xBFFF4000 - mask_write 0XE000A248 0x003FFFFF 0x00004000 - mask_write 0XE000A008 0xFFFFFFFF 0xBFFF0000 - mask_delay 0XF8F00200 1 - mask_write 0XE000A008 0xFFFFFFFF 0xBFFF4000 - mask_delay 0XF8F00200 1 - mask_delay 0XF8F00200 1 - mask_delay 0XF8F00200 1 - mask_delay 0XF8F00200 1 - mask_delay 0XF8F00200 1 -} -proc ps7_post_config_1_0 {} { - mwr -force 0XF8000008 0x0000DF0D - mask_write 0XF8000900 0x0000000F 0x0000000F - mask_write 0XF8000240 0xFFFFFFFF 0x00000000 - mwr -force 0XF8000004 0x0000767B -} -proc ps7_debug_1_0 {} { - mwr -force 0XF8898FB0 0xC5ACCE55 - mwr -force 0XF8899FB0 0xC5ACCE55 - mwr -force 0XF8809FB0 0xC5ACCE55 -} -set PCW_SILICON_VER_1_0 "0x0" -set PCW_SILICON_VER_2_0 "0x1" -set PCW_SILICON_VER_3_0 "0x2" -set APU_FREQ 650000000 - - - -proc mask_poll { addr mask } { - set count 1 - set curval "0x[string range [mrd $addr] end-8 end]" - set maskedval [expr {$curval & $mask}] - while { $maskedval == 0 } { - set curval "0x[string range [mrd $addr] end-8 end]" - set maskedval [expr {$curval & $mask}] - set count [ expr { $count + 1 } ] - if { $count == 100000000 } { - puts "Timeout Reached. Mask poll failed at ADDRESS: $addr MASK: $mask" - break - } - } -} - - - -proc mask_delay { addr val } { - set delay [ get_number_of_cycles_for_delay $val ] - perf_reset_and_start_timer - set curval "0x[string range [mrd $addr] end-8 end]" - set maskedval [expr {$curval < $delay}] - while { $maskedval == 1 } { - set curval "0x[string range [mrd $addr] end-8 end]" - set maskedval [expr {$curval < $delay}] - } - perf_reset_clock -} - -proc ps_version { } { - set si_ver "0x[string range [mrd 0xF8007080] end-8 end]" - set mask_sil_ver "0x[expr {$si_ver >> 28}]" - return $mask_sil_ver; -} - -proc ps7_post_config {} { - set saved_mode [configparams force-mem-accesses] - configparams force-mem-accesses 1 - - variable PCW_SILICON_VER_1_0 - variable PCW_SILICON_VER_2_0 - variable PCW_SILICON_VER_3_0 - set sil_ver [ps_version] - - if { $sil_ver == $PCW_SILICON_VER_1_0} { - ps7_post_config_1_0 - } elseif { $sil_ver == $PCW_SILICON_VER_2_0 } { - ps7_post_config_2_0 - } else { - ps7_post_config_3_0 - } - configparams force-mem-accesses $saved_mode -} - -proc ps7_debug {} { - variable PCW_SILICON_VER_1_0 - variable PCW_SILICON_VER_2_0 - variable PCW_SILICON_VER_3_0 - set sil_ver [ps_version] - - if { $sil_ver == $PCW_SILICON_VER_1_0} { - ps7_debug_1_0 - } elseif { $sil_ver == $PCW_SILICON_VER_2_0 } { - ps7_debug_2_0 - } else { - ps7_debug_3_0 - } -} -proc ps7_init {} { - variable PCW_SILICON_VER_1_0 - variable PCW_SILICON_VER_2_0 - variable PCW_SILICON_VER_3_0 - set sil_ver [ps_version] - if { $sil_ver == $PCW_SILICON_VER_1_0} { - ps7_mio_init_data_1_0 - ps7_pll_init_data_1_0 - ps7_clock_init_data_1_0 - ps7_ddr_init_data_1_0 - ps7_peripherals_init_data_1_0 - #puts "PCW Silicon Version : 1.0" - } elseif { $sil_ver == $PCW_SILICON_VER_2_0 } { - ps7_mio_init_data_2_0 - ps7_pll_init_data_2_0 - ps7_clock_init_data_2_0 - ps7_ddr_init_data_2_0 - ps7_peripherals_init_data_2_0 - #puts "PCW Silicon Version : 2.0" - } else { - ps7_mio_init_data_3_0 - ps7_pll_init_data_3_0 - ps7_clock_init_data_3_0 - ps7_ddr_init_data_3_0 - ps7_peripherals_init_data_3_0 - #puts "PCW Silicon Version : 3.0" - } -} - - -# For delay calculation using global timer - -# start timer - proc perf_start_clock { } { - - #writing SCU_GLOBAL_TIMER_CONTROL register - - mask_write 0xF8F00208 0x00000109 0x00000009 -} - -# stop timer and reset timer count regs - proc perf_reset_clock { } { - perf_disable_clock - mask_write 0xF8F00200 0xFFFFFFFF 0x00000000 - mask_write 0xF8F00204 0xFFFFFFFF 0x00000000 -} - -# Compute mask for given delay in miliseconds -proc get_number_of_cycles_for_delay { delay } { - - # GTC is always clocked at 1/2 of the CPU frequency (CPU_3x2x) - variable APU_FREQ - return [ expr ($delay * $APU_FREQ /(2 * 1000))] -} - - -# stop timer -proc perf_disable_clock {} { - mask_write 0xF8F00208 0xFFFFFFFF 0x00000000 -} - -proc perf_reset_and_start_timer {} { - perf_reset_clock - perf_start_clock -} - - diff --git a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/ps7_init_gpl.c b/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/ps7_init_gpl.c deleted file mode 100644 index 76ebc528f..000000000 --- a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/ps7_init_gpl.c +++ /dev/null @@ -1,13116 +0,0 @@ -/****************************************************************************** -* (c) Copyright 2010-2014 Xilinx, Inc. All rights reserved. -* -* This program is free software; you can redistribute it and/or modify -* it under the terms of the GNU General Public License as published by -* the Free Software Foundation; either version 2 of the License, or -* (at your option) any later version. -* -* This program is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -* GNU General Public License for more details. -* -* You should have received a copy of the GNU General Public License along -* with this program; if not, see <http://www.gnu.org/licenses/> -* -* -******************************************************************************/ -/****************************************************************************/ -/** -* -* @file ps7_init_gpl.c -* -* This file is automatically generated -* -*****************************************************************************/ - -#include "ps7_init_gpl.h" - -unsigned long ps7_pll_init_data_3_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: PLL SLCR REGISTERS - // .. .. START: ARM PLL INIT - // .. .. PLL_RES = 0xc - // .. .. ==> 0XF8000110[7:4] = 0x0000000CU - // .. .. ==> MASK : 0x000000F0U VAL : 0x000000C0U - // .. .. PLL_CP = 0x2 - // .. .. ==> 0XF8000110[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. LOCK_CNT = 0x177 - // .. .. ==> 0XF8000110[21:12] = 0x00000177U - // .. .. ==> MASK : 0x003FF000U VAL : 0x00177000U - // .. .. - EMIT_MASKWRITE(0XF8000110, 0x003FFFF0U ,0x001772C0U), - // .. .. .. START: UPDATE FB_DIV - // .. .. .. PLL_FDIV = 0x1a - // .. .. .. ==> 0XF8000100[18:12] = 0x0000001AU - // .. .. .. ==> MASK : 0x0007F000U VAL : 0x0001A000U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x0007F000U ,0x0001A000U), - // .. .. .. FINISH: UPDATE FB_DIV - // .. .. .. START: BY PASS PLL - // .. .. .. PLL_BYPASS_FORCE = 1 - // .. .. .. ==> 0XF8000100[4:4] = 0x00000001U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x00000010U ,0x00000010U), - // .. .. .. FINISH: BY PASS PLL - // .. .. .. START: ASSERT RESET - // .. .. .. PLL_RESET = 1 - // .. .. .. ==> 0XF8000100[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x00000001U ,0x00000001U), - // .. .. .. FINISH: ASSERT RESET - // .. .. .. START: DEASSERT RESET - // .. .. .. PLL_RESET = 0 - // .. .. .. ==> 0XF8000100[0:0] = 0x00000000U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x00000001U ,0x00000000U), - // .. .. .. FINISH: DEASSERT RESET - // .. .. .. START: CHECK PLL STATUS - // .. .. .. ARM_PLL_LOCK = 1 - // .. .. .. ==> 0XF800010C[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. - EMIT_MASKPOLL(0XF800010C, 0x00000001U), - // .. .. .. FINISH: CHECK PLL STATUS - // .. .. .. START: REMOVE PLL BY PASS - // .. .. .. PLL_BYPASS_FORCE = 0 - // .. .. .. ==> 0XF8000100[4:4] = 0x00000000U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x00000010U ,0x00000000U), - // .. .. .. FINISH: REMOVE PLL BY PASS - // .. .. .. SRCSEL = 0x0 - // .. .. .. ==> 0XF8000120[5:4] = 0x00000000U - // .. .. .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. .. .. DIVISOR = 0x2 - // .. .. .. ==> 0XF8000120[13:8] = 0x00000002U - // .. .. .. ==> MASK : 0x00003F00U VAL : 0x00000200U - // .. .. .. CPU_6OR4XCLKACT = 0x1 - // .. .. .. ==> 0XF8000120[24:24] = 0x00000001U - // .. .. .. ==> MASK : 0x01000000U VAL : 0x01000000U - // .. .. .. CPU_3OR2XCLKACT = 0x1 - // .. .. .. ==> 0XF8000120[25:25] = 0x00000001U - // .. .. .. ==> MASK : 0x02000000U VAL : 0x02000000U - // .. .. .. CPU_2XCLKACT = 0x1 - // .. .. .. ==> 0XF8000120[26:26] = 0x00000001U - // .. .. .. ==> MASK : 0x04000000U VAL : 0x04000000U - // .. .. .. CPU_1XCLKACT = 0x1 - // .. .. .. ==> 0XF8000120[27:27] = 0x00000001U - // .. .. .. ==> MASK : 0x08000000U VAL : 0x08000000U - // .. .. .. CPU_PERI_CLKACT = 0x1 - // .. .. .. ==> 0XF8000120[28:28] = 0x00000001U - // .. .. .. ==> MASK : 0x10000000U VAL : 0x10000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000120, 0x1F003F30U ,0x1F000200U), - // .. .. FINISH: ARM PLL INIT - // .. .. START: DDR PLL INIT - // .. .. PLL_RES = 0xc - // .. .. ==> 0XF8000114[7:4] = 0x0000000CU - // .. .. ==> MASK : 0x000000F0U VAL : 0x000000C0U - // .. .. PLL_CP = 0x2 - // .. .. ==> 0XF8000114[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. LOCK_CNT = 0x1db - // .. .. ==> 0XF8000114[21:12] = 0x000001DBU - // .. .. ==> MASK : 0x003FF000U VAL : 0x001DB000U - // .. .. - EMIT_MASKWRITE(0XF8000114, 0x003FFFF0U ,0x001DB2C0U), - // .. .. .. START: UPDATE FB_DIV - // .. .. .. PLL_FDIV = 0x15 - // .. .. .. ==> 0XF8000104[18:12] = 0x00000015U - // .. .. .. ==> MASK : 0x0007F000U VAL : 0x00015000U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x0007F000U ,0x00015000U), - // .. .. .. FINISH: UPDATE FB_DIV - // .. .. .. START: BY PASS PLL - // .. .. .. PLL_BYPASS_FORCE = 1 - // .. .. .. ==> 0XF8000104[4:4] = 0x00000001U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x00000010U ,0x00000010U), - // .. .. .. FINISH: BY PASS PLL - // .. .. .. START: ASSERT RESET - // .. .. .. PLL_RESET = 1 - // .. .. .. ==> 0XF8000104[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x00000001U ,0x00000001U), - // .. .. .. FINISH: ASSERT RESET - // .. .. .. START: DEASSERT RESET - // .. .. .. PLL_RESET = 0 - // .. .. .. ==> 0XF8000104[0:0] = 0x00000000U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x00000001U ,0x00000000U), - // .. .. .. FINISH: DEASSERT RESET - // .. .. .. START: CHECK PLL STATUS - // .. .. .. DDR_PLL_LOCK = 1 - // .. .. .. ==> 0XF800010C[1:1] = 0x00000001U - // .. .. .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. .. .. - EMIT_MASKPOLL(0XF800010C, 0x00000002U), - // .. .. .. FINISH: CHECK PLL STATUS - // .. .. .. START: REMOVE PLL BY PASS - // .. .. .. PLL_BYPASS_FORCE = 0 - // .. .. .. ==> 0XF8000104[4:4] = 0x00000000U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x00000010U ,0x00000000U), - // .. .. .. FINISH: REMOVE PLL BY PASS - // .. .. .. DDR_3XCLKACT = 0x1 - // .. .. .. ==> 0XF8000124[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. DDR_2XCLKACT = 0x1 - // .. .. .. ==> 0XF8000124[1:1] = 0x00000001U - // .. .. .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. .. .. DDR_3XCLK_DIVISOR = 0x2 - // .. .. .. ==> 0XF8000124[25:20] = 0x00000002U - // .. .. .. ==> MASK : 0x03F00000U VAL : 0x00200000U - // .. .. .. DDR_2XCLK_DIVISOR = 0x3 - // .. .. .. ==> 0XF8000124[31:26] = 0x00000003U - // .. .. .. ==> MASK : 0xFC000000U VAL : 0x0C000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000124, 0xFFF00003U ,0x0C200003U), - // .. .. FINISH: DDR PLL INIT - // .. .. START: IO PLL INIT - // .. .. PLL_RES = 0xc - // .. .. ==> 0XF8000118[7:4] = 0x0000000CU - // .. .. ==> MASK : 0x000000F0U VAL : 0x000000C0U - // .. .. PLL_CP = 0x2 - // .. .. ==> 0XF8000118[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. LOCK_CNT = 0x1f4 - // .. .. ==> 0XF8000118[21:12] = 0x000001F4U - // .. .. ==> MASK : 0x003FF000U VAL : 0x001F4000U - // .. .. - EMIT_MASKWRITE(0XF8000118, 0x003FFFF0U ,0x001F42C0U), - // .. .. .. START: UPDATE FB_DIV - // .. .. .. PLL_FDIV = 0x14 - // .. .. .. ==> 0XF8000108[18:12] = 0x00000014U - // .. .. .. ==> MASK : 0x0007F000U VAL : 0x00014000U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x0007F000U ,0x00014000U), - // .. .. .. FINISH: UPDATE FB_DIV - // .. .. .. START: BY PASS PLL - // .. .. .. PLL_BYPASS_FORCE = 1 - // .. .. .. ==> 0XF8000108[4:4] = 0x00000001U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x00000010U ,0x00000010U), - // .. .. .. FINISH: BY PASS PLL - // .. .. .. START: ASSERT RESET - // .. .. .. PLL_RESET = 1 - // .. .. .. ==> 0XF8000108[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x00000001U ,0x00000001U), - // .. .. .. FINISH: ASSERT RESET - // .. .. .. START: DEASSERT RESET - // .. .. .. PLL_RESET = 0 - // .. .. .. ==> 0XF8000108[0:0] = 0x00000000U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x00000001U ,0x00000000U), - // .. .. .. FINISH: DEASSERT RESET - // .. .. .. START: CHECK PLL STATUS - // .. .. .. IO_PLL_LOCK = 1 - // .. .. .. ==> 0XF800010C[2:2] = 0x00000001U - // .. .. .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. .. .. - EMIT_MASKPOLL(0XF800010C, 0x00000004U), - // .. .. .. FINISH: CHECK PLL STATUS - // .. .. .. START: REMOVE PLL BY PASS - // .. .. .. PLL_BYPASS_FORCE = 0 - // .. .. .. ==> 0XF8000108[4:4] = 0x00000000U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x00000010U ,0x00000000U), - // .. .. .. FINISH: REMOVE PLL BY PASS - // .. .. FINISH: IO PLL INIT - // .. FINISH: PLL SLCR REGISTERS - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_clock_init_data_3_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: CLOCK CONTROL SLCR REGISTERS - // .. CLKACT = 0x1 - // .. ==> 0XF8000128[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. DIVISOR0 = 0x34 - // .. ==> 0XF8000128[13:8] = 0x00000034U - // .. ==> MASK : 0x00003F00U VAL : 0x00003400U - // .. DIVISOR1 = 0x2 - // .. ==> 0XF8000128[25:20] = 0x00000002U - // .. ==> MASK : 0x03F00000U VAL : 0x00200000U - // .. - EMIT_MASKWRITE(0XF8000128, 0x03F03F01U ,0x00203401U), - // .. CLKACT = 0x1 - // .. ==> 0XF8000138[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. SRCSEL = 0x0 - // .. ==> 0XF8000138[4:4] = 0x00000000U - // .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000138, 0x00000011U ,0x00000001U), - // .. CLKACT = 0x1 - // .. ==> 0XF8000140[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. SRCSEL = 0x0 - // .. ==> 0XF8000140[6:4] = 0x00000000U - // .. ==> MASK : 0x00000070U VAL : 0x00000000U - // .. DIVISOR = 0x8 - // .. ==> 0XF8000140[13:8] = 0x00000008U - // .. ==> MASK : 0x00003F00U VAL : 0x00000800U - // .. DIVISOR1 = 0x1 - // .. ==> 0XF8000140[25:20] = 0x00000001U - // .. ==> MASK : 0x03F00000U VAL : 0x00100000U - // .. - EMIT_MASKWRITE(0XF8000140, 0x03F03F71U ,0x00100801U), - // .. CLKACT = 0x1 - // .. ==> 0XF800014C[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. SRCSEL = 0x0 - // .. ==> 0XF800014C[5:4] = 0x00000000U - // .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. DIVISOR = 0x5 - // .. ==> 0XF800014C[13:8] = 0x00000005U - // .. ==> MASK : 0x00003F00U VAL : 0x00000500U - // .. - EMIT_MASKWRITE(0XF800014C, 0x00003F31U ,0x00000501U), - // .. CLKACT0 = 0x1 - // .. ==> 0XF8000150[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. CLKACT1 = 0x0 - // .. ==> 0XF8000150[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. SRCSEL = 0x0 - // .. ==> 0XF8000150[5:4] = 0x00000000U - // .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. DIVISOR = 0x14 - // .. ==> 0XF8000150[13:8] = 0x00000014U - // .. ==> MASK : 0x00003F00U VAL : 0x00001400U - // .. - EMIT_MASKWRITE(0XF8000150, 0x00003F33U ,0x00001401U), - // .. CLKACT0 = 0x1 - // .. ==> 0XF8000154[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. CLKACT1 = 0x1 - // .. ==> 0XF8000154[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. SRCSEL = 0x0 - // .. ==> 0XF8000154[5:4] = 0x00000000U - // .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. DIVISOR = 0xa - // .. ==> 0XF8000154[13:8] = 0x0000000AU - // .. ==> MASK : 0x00003F00U VAL : 0x00000A00U - // .. - EMIT_MASKWRITE(0XF8000154, 0x00003F33U ,0x00000A03U), - // .. .. START: TRACE CLOCK - // .. .. FINISH: TRACE CLOCK - // .. .. CLKACT = 0x1 - // .. .. ==> 0XF8000168[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. SRCSEL = 0x0 - // .. .. ==> 0XF8000168[5:4] = 0x00000000U - // .. .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. .. DIVISOR = 0x5 - // .. .. ==> 0XF8000168[13:8] = 0x00000005U - // .. .. ==> MASK : 0x00003F00U VAL : 0x00000500U - // .. .. - EMIT_MASKWRITE(0XF8000168, 0x00003F31U ,0x00000501U), - // .. .. SRCSEL = 0x0 - // .. .. ==> 0XF8000170[5:4] = 0x00000000U - // .. .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. .. DIVISOR0 = 0x5 - // .. .. ==> 0XF8000170[13:8] = 0x00000005U - // .. .. ==> MASK : 0x00003F00U VAL : 0x00000500U - // .. .. DIVISOR1 = 0x2 - // .. .. ==> 0XF8000170[25:20] = 0x00000002U - // .. .. ==> MASK : 0x03F00000U VAL : 0x00200000U - // .. .. - EMIT_MASKWRITE(0XF8000170, 0x03F03F30U ,0x00200500U), - // .. .. CLK_621_TRUE = 0x1 - // .. .. ==> 0XF80001C4[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. - EMIT_MASKWRITE(0XF80001C4, 0x00000001U ,0x00000001U), - // .. .. DMA_CPU_2XCLKACT = 0x1 - // .. .. ==> 0XF800012C[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. USB0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[2:2] = 0x00000001U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. .. USB1_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[3:3] = 0x00000001U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000008U - // .. .. GEM0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[6:6] = 0x00000001U - // .. .. ==> MASK : 0x00000040U VAL : 0x00000040U - // .. .. GEM1_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[7:7] = 0x00000000U - // .. .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. .. SDI0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[10:10] = 0x00000001U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000400U - // .. .. SDI1_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. SPI0_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[14:14] = 0x00000000U - // .. .. ==> MASK : 0x00004000U VAL : 0x00000000U - // .. .. SPI1_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[15:15] = 0x00000000U - // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U - // .. .. CAN0_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. CAN1_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. I2C0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[18:18] = 0x00000001U - // .. .. ==> MASK : 0x00040000U VAL : 0x00040000U - // .. .. I2C1_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[19:19] = 0x00000001U - // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. .. UART0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[20:20] = 0x00000001U - // .. .. ==> MASK : 0x00100000U VAL : 0x00100000U - // .. .. UART1_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[21:21] = 0x00000001U - // .. .. ==> MASK : 0x00200000U VAL : 0x00200000U - // .. .. GPIO_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[22:22] = 0x00000001U - // .. .. ==> MASK : 0x00400000U VAL : 0x00400000U - // .. .. LQSPI_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[23:23] = 0x00000001U - // .. .. ==> MASK : 0x00800000U VAL : 0x00800000U - // .. .. SMC_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[24:24] = 0x00000001U - // .. .. ==> MASK : 0x01000000U VAL : 0x01000000U - // .. .. - EMIT_MASKWRITE(0XF800012C, 0x01FFCCCDU ,0x01FC044DU), - // .. FINISH: CLOCK CONTROL SLCR REGISTERS - // .. START: THIS SHOULD BE BLANK - // .. FINISH: THIS SHOULD BE BLANK - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_ddr_init_data_3_0[] = { - // START: top - // .. START: DDR INITIALIZATION - // .. .. START: LOCK DDR - // .. .. reg_ddrc_soft_rstb = 0 - // .. .. ==> 0XF8006000[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_powerdown_en = 0x0 - // .. .. ==> 0XF8006000[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_ddrc_data_bus_width = 0x0 - // .. .. ==> 0XF8006000[3:2] = 0x00000000U - // .. .. ==> MASK : 0x0000000CU VAL : 0x00000000U - // .. .. reg_ddrc_burst8_refresh = 0x0 - // .. .. ==> 0XF8006000[6:4] = 0x00000000U - // .. .. ==> MASK : 0x00000070U VAL : 0x00000000U - // .. .. reg_ddrc_rdwr_idle_gap = 0x1 - // .. .. ==> 0XF8006000[13:7] = 0x00000001U - // .. .. ==> MASK : 0x00003F80U VAL : 0x00000080U - // .. .. reg_ddrc_dis_rd_bypass = 0x0 - // .. .. ==> 0XF8006000[14:14] = 0x00000000U - // .. .. ==> MASK : 0x00004000U VAL : 0x00000000U - // .. .. reg_ddrc_dis_act_bypass = 0x0 - // .. .. ==> 0XF8006000[15:15] = 0x00000000U - // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U - // .. .. reg_ddrc_dis_auto_refresh = 0x0 - // .. .. ==> 0XF8006000[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006000, 0x0001FFFFU ,0x00000080U), - // .. .. FINISH: LOCK DDR - // .. .. reg_ddrc_t_rfc_nom_x32 = 0x7f - // .. .. ==> 0XF8006004[11:0] = 0x0000007FU - // .. .. ==> MASK : 0x00000FFFU VAL : 0x0000007FU - // .. .. reserved_reg_ddrc_active_ranks = 0x1 - // .. .. ==> 0XF8006004[13:12] = 0x00000001U - // .. .. ==> MASK : 0x00003000U VAL : 0x00001000U - // .. .. reg_ddrc_addrmap_cs_bit0 = 0x0 - // .. .. ==> 0XF8006004[18:14] = 0x00000000U - // .. .. ==> MASK : 0x0007C000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006004, 0x0007FFFFU ,0x0000107FU), - // .. .. reg_ddrc_hpr_min_non_critical_x32 = 0xf - // .. .. ==> 0XF8006008[10:0] = 0x0000000FU - // .. .. ==> MASK : 0x000007FFU VAL : 0x0000000FU - // .. .. reg_ddrc_hpr_max_starve_x32 = 0xf - // .. .. ==> 0XF8006008[21:11] = 0x0000000FU - // .. .. ==> MASK : 0x003FF800U VAL : 0x00007800U - // .. .. reg_ddrc_hpr_xact_run_length = 0xf - // .. .. ==> 0XF8006008[25:22] = 0x0000000FU - // .. .. ==> MASK : 0x03C00000U VAL : 0x03C00000U - // .. .. - EMIT_MASKWRITE(0XF8006008, 0x03FFFFFFU ,0x03C0780FU), - // .. .. reg_ddrc_lpr_min_non_critical_x32 = 0x1 - // .. .. ==> 0XF800600C[10:0] = 0x00000001U - // .. .. ==> MASK : 0x000007FFU VAL : 0x00000001U - // .. .. reg_ddrc_lpr_max_starve_x32 = 0x2 - // .. .. ==> 0XF800600C[21:11] = 0x00000002U - // .. .. ==> MASK : 0x003FF800U VAL : 0x00001000U - // .. .. reg_ddrc_lpr_xact_run_length = 0x8 - // .. .. ==> 0XF800600C[25:22] = 0x00000008U - // .. .. ==> MASK : 0x03C00000U VAL : 0x02000000U - // .. .. - EMIT_MASKWRITE(0XF800600C, 0x03FFFFFFU ,0x02001001U), - // .. .. reg_ddrc_w_min_non_critical_x32 = 0x1 - // .. .. ==> 0XF8006010[10:0] = 0x00000001U - // .. .. ==> MASK : 0x000007FFU VAL : 0x00000001U - // .. .. reg_ddrc_w_xact_run_length = 0x8 - // .. .. ==> 0XF8006010[14:11] = 0x00000008U - // .. .. ==> MASK : 0x00007800U VAL : 0x00004000U - // .. .. reg_ddrc_w_max_starve_x32 = 0x2 - // .. .. ==> 0XF8006010[25:15] = 0x00000002U - // .. .. ==> MASK : 0x03FF8000U VAL : 0x00010000U - // .. .. - EMIT_MASKWRITE(0XF8006010, 0x03FFFFFFU ,0x00014001U), - // .. .. reg_ddrc_t_rc = 0x1a - // .. .. ==> 0XF8006014[5:0] = 0x0000001AU - // .. .. ==> MASK : 0x0000003FU VAL : 0x0000001AU - // .. .. reg_ddrc_t_rfc_min = 0x54 - // .. .. ==> 0XF8006014[13:6] = 0x00000054U - // .. .. ==> MASK : 0x00003FC0U VAL : 0x00001500U - // .. .. reg_ddrc_post_selfref_gap_x32 = 0x10 - // .. .. ==> 0XF8006014[20:14] = 0x00000010U - // .. .. ==> MASK : 0x001FC000U VAL : 0x00040000U - // .. .. - EMIT_MASKWRITE(0XF8006014, 0x001FFFFFU ,0x0004151AU), - // .. .. reg_ddrc_wr2pre = 0x12 - // .. .. ==> 0XF8006018[4:0] = 0x00000012U - // .. .. ==> MASK : 0x0000001FU VAL : 0x00000012U - // .. .. reg_ddrc_powerdown_to_x32 = 0x6 - // .. .. ==> 0XF8006018[9:5] = 0x00000006U - // .. .. ==> MASK : 0x000003E0U VAL : 0x000000C0U - // .. .. reg_ddrc_t_faw = 0x15 - // .. .. ==> 0XF8006018[15:10] = 0x00000015U - // .. .. ==> MASK : 0x0000FC00U VAL : 0x00005400U - // .. .. reg_ddrc_t_ras_max = 0x23 - // .. .. ==> 0XF8006018[21:16] = 0x00000023U - // .. .. ==> MASK : 0x003F0000U VAL : 0x00230000U - // .. .. reg_ddrc_t_ras_min = 0x13 - // .. .. ==> 0XF8006018[26:22] = 0x00000013U - // .. .. ==> MASK : 0x07C00000U VAL : 0x04C00000U - // .. .. reg_ddrc_t_cke = 0x4 - // .. .. ==> 0XF8006018[31:28] = 0x00000004U - // .. .. ==> MASK : 0xF0000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF8006018, 0xF7FFFFFFU ,0x44E354D2U), - // .. .. reg_ddrc_write_latency = 0x5 - // .. .. ==> 0XF800601C[4:0] = 0x00000005U - // .. .. ==> MASK : 0x0000001FU VAL : 0x00000005U - // .. .. reg_ddrc_rd2wr = 0x7 - // .. .. ==> 0XF800601C[9:5] = 0x00000007U - // .. .. ==> MASK : 0x000003E0U VAL : 0x000000E0U - // .. .. reg_ddrc_wr2rd = 0xe - // .. .. ==> 0XF800601C[14:10] = 0x0000000EU - // .. .. ==> MASK : 0x00007C00U VAL : 0x00003800U - // .. .. reg_ddrc_t_xp = 0x4 - // .. .. ==> 0XF800601C[19:15] = 0x00000004U - // .. .. ==> MASK : 0x000F8000U VAL : 0x00020000U - // .. .. reg_ddrc_pad_pd = 0x0 - // .. .. ==> 0XF800601C[22:20] = 0x00000000U - // .. .. ==> MASK : 0x00700000U VAL : 0x00000000U - // .. .. reg_ddrc_rd2pre = 0x4 - // .. .. ==> 0XF800601C[27:23] = 0x00000004U - // .. .. ==> MASK : 0x0F800000U VAL : 0x02000000U - // .. .. reg_ddrc_t_rcd = 0x7 - // .. .. ==> 0XF800601C[31:28] = 0x00000007U - // .. .. ==> MASK : 0xF0000000U VAL : 0x70000000U - // .. .. - EMIT_MASKWRITE(0XF800601C, 0xFFFFFFFFU ,0x720238E5U), - // .. .. reg_ddrc_t_ccd = 0x4 - // .. .. ==> 0XF8006020[4:2] = 0x00000004U - // .. .. ==> MASK : 0x0000001CU VAL : 0x00000010U - // .. .. reg_ddrc_t_rrd = 0x6 - // .. .. ==> 0XF8006020[7:5] = 0x00000006U - // .. .. ==> MASK : 0x000000E0U VAL : 0x000000C0U - // .. .. reg_ddrc_refresh_margin = 0x2 - // .. .. ==> 0XF8006020[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. reg_ddrc_t_rp = 0x7 - // .. .. ==> 0XF8006020[15:12] = 0x00000007U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00007000U - // .. .. reg_ddrc_refresh_to_x32 = 0x8 - // .. .. ==> 0XF8006020[20:16] = 0x00000008U - // .. .. ==> MASK : 0x001F0000U VAL : 0x00080000U - // .. .. reg_ddrc_mobile = 0x0 - // .. .. ==> 0XF8006020[22:22] = 0x00000000U - // .. .. ==> MASK : 0x00400000U VAL : 0x00000000U - // .. .. reg_ddrc_en_dfi_dram_clk_disable = 0x0 - // .. .. ==> 0XF8006020[23:23] = 0x00000000U - // .. .. ==> MASK : 0x00800000U VAL : 0x00000000U - // .. .. reg_ddrc_read_latency = 0x7 - // .. .. ==> 0XF8006020[28:24] = 0x00000007U - // .. .. ==> MASK : 0x1F000000U VAL : 0x07000000U - // .. .. reg_phy_mode_ddr1_ddr2 = 0x1 - // .. .. ==> 0XF8006020[29:29] = 0x00000001U - // .. .. ==> MASK : 0x20000000U VAL : 0x20000000U - // .. .. reg_ddrc_dis_pad_pd = 0x0 - // .. .. ==> 0XF8006020[30:30] = 0x00000000U - // .. .. ==> MASK : 0x40000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006020, 0x7FDFFFFCU ,0x270872D0U), - // .. .. reg_ddrc_en_2t_timing_mode = 0x0 - // .. .. ==> 0XF8006024[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_prefer_write = 0x0 - // .. .. ==> 0XF8006024[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_ddrc_mr_wr = 0x0 - // .. .. ==> 0XF8006024[6:6] = 0x00000000U - // .. .. ==> MASK : 0x00000040U VAL : 0x00000000U - // .. .. reg_ddrc_mr_addr = 0x0 - // .. .. ==> 0XF8006024[8:7] = 0x00000000U - // .. .. ==> MASK : 0x00000180U VAL : 0x00000000U - // .. .. reg_ddrc_mr_data = 0x0 - // .. .. ==> 0XF8006024[24:9] = 0x00000000U - // .. .. ==> MASK : 0x01FFFE00U VAL : 0x00000000U - // .. .. ddrc_reg_mr_wr_busy = 0x0 - // .. .. ==> 0XF8006024[25:25] = 0x00000000U - // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U - // .. .. reg_ddrc_mr_type = 0x0 - // .. .. ==> 0XF8006024[26:26] = 0x00000000U - // .. .. ==> MASK : 0x04000000U VAL : 0x00000000U - // .. .. reg_ddrc_mr_rdata_valid = 0x0 - // .. .. ==> 0XF8006024[27:27] = 0x00000000U - // .. .. ==> MASK : 0x08000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006024, 0x0FFFFFC3U ,0x00000000U), - // .. .. reg_ddrc_final_wait_x32 = 0x7 - // .. .. ==> 0XF8006028[6:0] = 0x00000007U - // .. .. ==> MASK : 0x0000007FU VAL : 0x00000007U - // .. .. reg_ddrc_pre_ocd_x32 = 0x0 - // .. .. ==> 0XF8006028[10:7] = 0x00000000U - // .. .. ==> MASK : 0x00000780U VAL : 0x00000000U - // .. .. reg_ddrc_t_mrd = 0x4 - // .. .. ==> 0XF8006028[13:11] = 0x00000004U - // .. .. ==> MASK : 0x00003800U VAL : 0x00002000U - // .. .. - EMIT_MASKWRITE(0XF8006028, 0x00003FFFU ,0x00002007U), - // .. .. reg_ddrc_emr2 = 0x8 - // .. .. ==> 0XF800602C[15:0] = 0x00000008U - // .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000008U - // .. .. reg_ddrc_emr3 = 0x0 - // .. .. ==> 0XF800602C[31:16] = 0x00000000U - // .. .. ==> MASK : 0xFFFF0000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800602C, 0xFFFFFFFFU ,0x00000008U), - // .. .. reg_ddrc_mr = 0x930 - // .. .. ==> 0XF8006030[15:0] = 0x00000930U - // .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000930U - // .. .. reg_ddrc_emr = 0x4 - // .. .. ==> 0XF8006030[31:16] = 0x00000004U - // .. .. ==> MASK : 0xFFFF0000U VAL : 0x00040000U - // .. .. - EMIT_MASKWRITE(0XF8006030, 0xFFFFFFFFU ,0x00040930U), - // .. .. reg_ddrc_burst_rdwr = 0x4 - // .. .. ==> 0XF8006034[3:0] = 0x00000004U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000004U - // .. .. reg_ddrc_pre_cke_x1024 = 0x167 - // .. .. ==> 0XF8006034[13:4] = 0x00000167U - // .. .. ==> MASK : 0x00003FF0U VAL : 0x00001670U - // .. .. reg_ddrc_post_cke_x1024 = 0x1 - // .. .. ==> 0XF8006034[25:16] = 0x00000001U - // .. .. ==> MASK : 0x03FF0000U VAL : 0x00010000U - // .. .. reg_ddrc_burstchop = 0x0 - // .. .. ==> 0XF8006034[28:28] = 0x00000000U - // .. .. ==> MASK : 0x10000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006034, 0x13FF3FFFU ,0x00011674U), - // .. .. reg_ddrc_force_low_pri_n = 0x0 - // .. .. ==> 0XF8006038[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_dis_dq = 0x0 - // .. .. ==> 0XF8006038[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006038, 0x00000003U ,0x00000000U), - // .. .. reg_ddrc_addrmap_bank_b0 = 0x7 - // .. .. ==> 0XF800603C[3:0] = 0x00000007U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000007U - // .. .. reg_ddrc_addrmap_bank_b1 = 0x7 - // .. .. ==> 0XF800603C[7:4] = 0x00000007U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000070U - // .. .. reg_ddrc_addrmap_bank_b2 = 0x7 - // .. .. ==> 0XF800603C[11:8] = 0x00000007U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000700U - // .. .. reg_ddrc_addrmap_col_b5 = 0x0 - // .. .. ==> 0XF800603C[15:12] = 0x00000000U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b6 = 0x0 - // .. .. ==> 0XF800603C[19:16] = 0x00000000U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800603C, 0x000FFFFFU ,0x00000777U), - // .. .. reg_ddrc_addrmap_col_b2 = 0x0 - // .. .. ==> 0XF8006040[3:0] = 0x00000000U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b3 = 0x0 - // .. .. ==> 0XF8006040[7:4] = 0x00000000U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b4 = 0x0 - // .. .. ==> 0XF8006040[11:8] = 0x00000000U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b7 = 0x0 - // .. .. ==> 0XF8006040[15:12] = 0x00000000U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b8 = 0x0 - // .. .. ==> 0XF8006040[19:16] = 0x00000000U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b9 = 0xf - // .. .. ==> 0XF8006040[23:20] = 0x0000000FU - // .. .. ==> MASK : 0x00F00000U VAL : 0x00F00000U - // .. .. reg_ddrc_addrmap_col_b10 = 0xf - // .. .. ==> 0XF8006040[27:24] = 0x0000000FU - // .. .. ==> MASK : 0x0F000000U VAL : 0x0F000000U - // .. .. reg_ddrc_addrmap_col_b11 = 0xf - // .. .. ==> 0XF8006040[31:28] = 0x0000000FU - // .. .. ==> MASK : 0xF0000000U VAL : 0xF0000000U - // .. .. - EMIT_MASKWRITE(0XF8006040, 0xFFFFFFFFU ,0xFFF00000U), - // .. .. reg_ddrc_addrmap_row_b0 = 0x6 - // .. .. ==> 0XF8006044[3:0] = 0x00000006U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000006U - // .. .. reg_ddrc_addrmap_row_b1 = 0x6 - // .. .. ==> 0XF8006044[7:4] = 0x00000006U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000060U - // .. .. reg_ddrc_addrmap_row_b2_11 = 0x6 - // .. .. ==> 0XF8006044[11:8] = 0x00000006U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000600U - // .. .. reg_ddrc_addrmap_row_b12 = 0x6 - // .. .. ==> 0XF8006044[15:12] = 0x00000006U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00006000U - // .. .. reg_ddrc_addrmap_row_b13 = 0x6 - // .. .. ==> 0XF8006044[19:16] = 0x00000006U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00060000U - // .. .. reg_ddrc_addrmap_row_b14 = 0xf - // .. .. ==> 0XF8006044[23:20] = 0x0000000FU - // .. .. ==> MASK : 0x00F00000U VAL : 0x00F00000U - // .. .. reg_ddrc_addrmap_row_b15 = 0xf - // .. .. ==> 0XF8006044[27:24] = 0x0000000FU - // .. .. ==> MASK : 0x0F000000U VAL : 0x0F000000U - // .. .. - EMIT_MASKWRITE(0XF8006044, 0x0FFFFFFFU ,0x0FF66666U), - // .. .. reg_phy_rd_local_odt = 0x0 - // .. .. ==> 0XF8006048[13:12] = 0x00000000U - // .. .. ==> MASK : 0x00003000U VAL : 0x00000000U - // .. .. reg_phy_wr_local_odt = 0x3 - // .. .. ==> 0XF8006048[15:14] = 0x00000003U - // .. .. ==> MASK : 0x0000C000U VAL : 0x0000C000U - // .. .. reg_phy_idle_local_odt = 0x3 - // .. .. ==> 0XF8006048[17:16] = 0x00000003U - // .. .. ==> MASK : 0x00030000U VAL : 0x00030000U - // .. .. reserved_reg_ddrc_rank0_wr_odt = 0x1 - // .. .. ==> 0XF8006048[5:3] = 0x00000001U - // .. .. ==> MASK : 0x00000038U VAL : 0x00000008U - // .. .. reserved_reg_ddrc_rank0_rd_odt = 0x0 - // .. .. ==> 0XF8006048[2:0] = 0x00000000U - // .. .. ==> MASK : 0x00000007U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006048, 0x0003F03FU ,0x0003C008U), - // .. .. reg_phy_rd_cmd_to_data = 0x0 - // .. .. ==> 0XF8006050[3:0] = 0x00000000U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U - // .. .. reg_phy_wr_cmd_to_data = 0x0 - // .. .. ==> 0XF8006050[7:4] = 0x00000000U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. .. reg_phy_rdc_we_to_re_delay = 0x8 - // .. .. ==> 0XF8006050[11:8] = 0x00000008U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000800U - // .. .. reg_phy_rdc_fifo_rst_disable = 0x0 - // .. .. ==> 0XF8006050[15:15] = 0x00000000U - // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U - // .. .. reg_phy_use_fixed_re = 0x1 - // .. .. ==> 0XF8006050[16:16] = 0x00000001U - // .. .. ==> MASK : 0x00010000U VAL : 0x00010000U - // .. .. reg_phy_rdc_fifo_rst_err_cnt_clr = 0x0 - // .. .. ==> 0XF8006050[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_phy_dis_phy_ctrl_rstn = 0x0 - // .. .. ==> 0XF8006050[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_phy_clk_stall_level = 0x0 - // .. .. ==> 0XF8006050[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_num_of_dq0 = 0x7 - // .. .. ==> 0XF8006050[27:24] = 0x00000007U - // .. .. ==> MASK : 0x0F000000U VAL : 0x07000000U - // .. .. reg_phy_wrlvl_num_of_dq0 = 0x7 - // .. .. ==> 0XF8006050[31:28] = 0x00000007U - // .. .. ==> MASK : 0xF0000000U VAL : 0x70000000U - // .. .. - EMIT_MASKWRITE(0XF8006050, 0xFF0F8FFFU ,0x77010800U), - // .. .. reg_ddrc_dis_dll_calib = 0x0 - // .. .. ==> 0XF8006058[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006058, 0x00010000U ,0x00000000U), - // .. .. reg_ddrc_rd_odt_delay = 0x3 - // .. .. ==> 0XF800605C[3:0] = 0x00000003U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000003U - // .. .. reg_ddrc_wr_odt_delay = 0x0 - // .. .. ==> 0XF800605C[7:4] = 0x00000000U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. .. reg_ddrc_rd_odt_hold = 0x0 - // .. .. ==> 0XF800605C[11:8] = 0x00000000U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000000U - // .. .. reg_ddrc_wr_odt_hold = 0x5 - // .. .. ==> 0XF800605C[15:12] = 0x00000005U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00005000U - // .. .. - EMIT_MASKWRITE(0XF800605C, 0x0000FFFFU ,0x00005003U), - // .. .. reg_ddrc_pageclose = 0x0 - // .. .. ==> 0XF8006060[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_lpr_num_entries = 0x1f - // .. .. ==> 0XF8006060[6:1] = 0x0000001FU - // .. .. ==> MASK : 0x0000007EU VAL : 0x0000003EU - // .. .. reg_ddrc_auto_pre_en = 0x0 - // .. .. ==> 0XF8006060[7:7] = 0x00000000U - // .. .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. .. reg_ddrc_refresh_update_level = 0x0 - // .. .. ==> 0XF8006060[8:8] = 0x00000000U - // .. .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. .. reg_ddrc_dis_wc = 0x0 - // .. .. ==> 0XF8006060[9:9] = 0x00000000U - // .. .. ==> MASK : 0x00000200U VAL : 0x00000000U - // .. .. reg_ddrc_dis_collision_page_opt = 0x0 - // .. .. ==> 0XF8006060[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_ddrc_selfref_en = 0x0 - // .. .. ==> 0XF8006060[12:12] = 0x00000000U - // .. .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006060, 0x000017FFU ,0x0000003EU), - // .. .. reg_ddrc_go2critical_hysteresis = 0x0 - // .. .. ==> 0XF8006064[12:5] = 0x00000000U - // .. .. ==> MASK : 0x00001FE0U VAL : 0x00000000U - // .. .. reg_arb_go2critical_en = 0x1 - // .. .. ==> 0XF8006064[17:17] = 0x00000001U - // .. .. ==> MASK : 0x00020000U VAL : 0x00020000U - // .. .. - EMIT_MASKWRITE(0XF8006064, 0x00021FE0U ,0x00020000U), - // .. .. reg_ddrc_wrlvl_ww = 0x41 - // .. .. ==> 0XF8006068[7:0] = 0x00000041U - // .. .. ==> MASK : 0x000000FFU VAL : 0x00000041U - // .. .. reg_ddrc_rdlvl_rr = 0x41 - // .. .. ==> 0XF8006068[15:8] = 0x00000041U - // .. .. ==> MASK : 0x0000FF00U VAL : 0x00004100U - // .. .. reg_ddrc_dfi_t_wlmrd = 0x28 - // .. .. ==> 0XF8006068[25:16] = 0x00000028U - // .. .. ==> MASK : 0x03FF0000U VAL : 0x00280000U - // .. .. - EMIT_MASKWRITE(0XF8006068, 0x03FFFFFFU ,0x00284141U), - // .. .. dfi_t_ctrlupd_interval_min_x1024 = 0x10 - // .. .. ==> 0XF800606C[7:0] = 0x00000010U - // .. .. ==> MASK : 0x000000FFU VAL : 0x00000010U - // .. .. dfi_t_ctrlupd_interval_max_x1024 = 0x16 - // .. .. ==> 0XF800606C[15:8] = 0x00000016U - // .. .. ==> MASK : 0x0000FF00U VAL : 0x00001600U - // .. .. - EMIT_MASKWRITE(0XF800606C, 0x0000FFFFU ,0x00001610U), - // .. .. reg_ddrc_dfi_t_ctrl_delay = 0x1 - // .. .. ==> 0XF8006078[3:0] = 0x00000001U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000001U - // .. .. reg_ddrc_dfi_t_dram_clk_disable = 0x1 - // .. .. ==> 0XF8006078[7:4] = 0x00000001U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000010U - // .. .. reg_ddrc_dfi_t_dram_clk_enable = 0x1 - // .. .. ==> 0XF8006078[11:8] = 0x00000001U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000100U - // .. .. reg_ddrc_t_cksre = 0x6 - // .. .. ==> 0XF8006078[15:12] = 0x00000006U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00006000U - // .. .. reg_ddrc_t_cksrx = 0x6 - // .. .. ==> 0XF8006078[19:16] = 0x00000006U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00060000U - // .. .. reg_ddrc_t_ckesr = 0x4 - // .. .. ==> 0XF8006078[25:20] = 0x00000004U - // .. .. ==> MASK : 0x03F00000U VAL : 0x00400000U - // .. .. - EMIT_MASKWRITE(0XF8006078, 0x03FFFFFFU ,0x00466111U), - // .. .. reg_ddrc_t_ckpde = 0x2 - // .. .. ==> 0XF800607C[3:0] = 0x00000002U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000002U - // .. .. reg_ddrc_t_ckpdx = 0x2 - // .. .. ==> 0XF800607C[7:4] = 0x00000002U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000020U - // .. .. reg_ddrc_t_ckdpde = 0x2 - // .. .. ==> 0XF800607C[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. reg_ddrc_t_ckdpdx = 0x2 - // .. .. ==> 0XF800607C[15:12] = 0x00000002U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00002000U - // .. .. reg_ddrc_t_ckcsx = 0x3 - // .. .. ==> 0XF800607C[19:16] = 0x00000003U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00030000U - // .. .. - EMIT_MASKWRITE(0XF800607C, 0x000FFFFFU ,0x00032222U), - // .. .. reg_ddrc_dis_auto_zq = 0x0 - // .. .. ==> 0XF80060A4[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_ddr3 = 0x1 - // .. .. ==> 0XF80060A4[1:1] = 0x00000001U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. .. reg_ddrc_t_mod = 0x200 - // .. .. ==> 0XF80060A4[11:2] = 0x00000200U - // .. .. ==> MASK : 0x00000FFCU VAL : 0x00000800U - // .. .. reg_ddrc_t_zq_long_nop = 0x200 - // .. .. ==> 0XF80060A4[21:12] = 0x00000200U - // .. .. ==> MASK : 0x003FF000U VAL : 0x00200000U - // .. .. reg_ddrc_t_zq_short_nop = 0x40 - // .. .. ==> 0XF80060A4[31:22] = 0x00000040U - // .. .. ==> MASK : 0xFFC00000U VAL : 0x10000000U - // .. .. - EMIT_MASKWRITE(0XF80060A4, 0xFFFFFFFFU ,0x10200802U), - // .. .. t_zq_short_interval_x1024 = 0xc845 - // .. .. ==> 0XF80060A8[19:0] = 0x0000C845U - // .. .. ==> MASK : 0x000FFFFFU VAL : 0x0000C845U - // .. .. dram_rstn_x1024 = 0x67 - // .. .. ==> 0XF80060A8[27:20] = 0x00000067U - // .. .. ==> MASK : 0x0FF00000U VAL : 0x06700000U - // .. .. - EMIT_MASKWRITE(0XF80060A8, 0x0FFFFFFFU ,0x0670C845U), - // .. .. deeppowerdown_en = 0x0 - // .. .. ==> 0XF80060AC[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. deeppowerdown_to_x1024 = 0xff - // .. .. ==> 0XF80060AC[8:1] = 0x000000FFU - // .. .. ==> MASK : 0x000001FEU VAL : 0x000001FEU - // .. .. - EMIT_MASKWRITE(0XF80060AC, 0x000001FFU ,0x000001FEU), - // .. .. dfi_wrlvl_max_x1024 = 0xfff - // .. .. ==> 0XF80060B0[11:0] = 0x00000FFFU - // .. .. ==> MASK : 0x00000FFFU VAL : 0x00000FFFU - // .. .. dfi_rdlvl_max_x1024 = 0xfff - // .. .. ==> 0XF80060B0[23:12] = 0x00000FFFU - // .. .. ==> MASK : 0x00FFF000U VAL : 0x00FFF000U - // .. .. ddrc_reg_twrlvl_max_error = 0x0 - // .. .. ==> 0XF80060B0[24:24] = 0x00000000U - // .. .. ==> MASK : 0x01000000U VAL : 0x00000000U - // .. .. ddrc_reg_trdlvl_max_error = 0x0 - // .. .. ==> 0XF80060B0[25:25] = 0x00000000U - // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U - // .. .. reg_ddrc_dfi_wr_level_en = 0x1 - // .. .. ==> 0XF80060B0[26:26] = 0x00000001U - // .. .. ==> MASK : 0x04000000U VAL : 0x04000000U - // .. .. reg_ddrc_dfi_rd_dqs_gate_level = 0x1 - // .. .. ==> 0XF80060B0[27:27] = 0x00000001U - // .. .. ==> MASK : 0x08000000U VAL : 0x08000000U - // .. .. reg_ddrc_dfi_rd_data_eye_train = 0x1 - // .. .. ==> 0XF80060B0[28:28] = 0x00000001U - // .. .. ==> MASK : 0x10000000U VAL : 0x10000000U - // .. .. - EMIT_MASKWRITE(0XF80060B0, 0x1FFFFFFFU ,0x1CFFFFFFU), - // .. .. reg_ddrc_skip_ocd = 0x1 - // .. .. ==> 0XF80060B4[9:9] = 0x00000001U - // .. .. ==> MASK : 0x00000200U VAL : 0x00000200U - // .. .. - EMIT_MASKWRITE(0XF80060B4, 0x00000200U ,0x00000200U), - // .. .. reg_ddrc_dfi_t_rddata_en = 0x6 - // .. .. ==> 0XF80060B8[4:0] = 0x00000006U - // .. .. ==> MASK : 0x0000001FU VAL : 0x00000006U - // .. .. reg_ddrc_dfi_t_ctrlup_min = 0x3 - // .. .. ==> 0XF80060B8[14:5] = 0x00000003U - // .. .. ==> MASK : 0x00007FE0U VAL : 0x00000060U - // .. .. reg_ddrc_dfi_t_ctrlup_max = 0x40 - // .. .. ==> 0XF80060B8[24:15] = 0x00000040U - // .. .. ==> MASK : 0x01FF8000U VAL : 0x00200000U - // .. .. - EMIT_MASKWRITE(0XF80060B8, 0x01FFFFFFU ,0x00200066U), - // .. .. Clear_Uncorrectable_DRAM_ECC_error = 0x0 - // .. .. ==> 0XF80060C4[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. Clear_Correctable_DRAM_ECC_error = 0x0 - // .. .. ==> 0XF80060C4[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060C4, 0x00000003U ,0x00000000U), - // .. .. CORR_ECC_LOG_VALID = 0x0 - // .. .. ==> 0XF80060C8[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. ECC_CORRECTED_BIT_NUM = 0x0 - // .. .. ==> 0XF80060C8[7:1] = 0x00000000U - // .. .. ==> MASK : 0x000000FEU VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060C8, 0x000000FFU ,0x00000000U), - // .. .. UNCORR_ECC_LOG_VALID = 0x0 - // .. .. ==> 0XF80060DC[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060DC, 0x00000001U ,0x00000000U), - // .. .. STAT_NUM_CORR_ERR = 0x0 - // .. .. ==> 0XF80060F0[15:8] = 0x00000000U - // .. .. ==> MASK : 0x0000FF00U VAL : 0x00000000U - // .. .. STAT_NUM_UNCORR_ERR = 0x0 - // .. .. ==> 0XF80060F0[7:0] = 0x00000000U - // .. .. ==> MASK : 0x000000FFU VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060F0, 0x0000FFFFU ,0x00000000U), - // .. .. reg_ddrc_ecc_mode = 0x0 - // .. .. ==> 0XF80060F4[2:0] = 0x00000000U - // .. .. ==> MASK : 0x00000007U VAL : 0x00000000U - // .. .. reg_ddrc_dis_scrub = 0x1 - // .. .. ==> 0XF80060F4[3:3] = 0x00000001U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000008U - // .. .. - EMIT_MASKWRITE(0XF80060F4, 0x0000000FU ,0x00000008U), - // .. .. reg_phy_dif_on = 0x0 - // .. .. ==> 0XF8006114[3:0] = 0x00000000U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U - // .. .. reg_phy_dif_off = 0x0 - // .. .. ==> 0XF8006114[7:4] = 0x00000000U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006114, 0x000000FFU ,0x00000000U), - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF8006118[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006118[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF8006118[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006118[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF8006118[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF8006118[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF8006118[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF8006118, 0x7FFFFFCFU ,0x40000001U), - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF800611C[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF800611C[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF800611C[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF800611C[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF800611C[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF800611C[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF800611C[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF800611C, 0x7FFFFFCFU ,0x40000001U), - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF8006120[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006120[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF8006120[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006120[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF8006120[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF8006120[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF8006120[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF8006120, 0x7FFFFFCFU ,0x40000001U), - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF8006124[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006124[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF8006124[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006124[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF8006124[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF8006124[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF8006124[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF8006124, 0x7FFFFFCFU ,0x40000001U), - // .. .. reg_phy_wrlvl_init_ratio = 0x0 - // .. .. ==> 0XF800612C[9:0] = 0x00000000U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U - // .. .. reg_phy_gatelvl_init_ratio = 0x8f - // .. .. ==> 0XF800612C[19:10] = 0x0000008FU - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00023C00U - // .. .. - EMIT_MASKWRITE(0XF800612C, 0x000FFFFFU ,0x00023C00U), - // .. .. reg_phy_wrlvl_init_ratio = 0x0 - // .. .. ==> 0XF8006130[9:0] = 0x00000000U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U - // .. .. reg_phy_gatelvl_init_ratio = 0x8a - // .. .. ==> 0XF8006130[19:10] = 0x0000008AU - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00022800U - // .. .. - EMIT_MASKWRITE(0XF8006130, 0x000FFFFFU ,0x00022800U), - // .. .. reg_phy_wrlvl_init_ratio = 0x0 - // .. .. ==> 0XF8006134[9:0] = 0x00000000U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U - // .. .. reg_phy_gatelvl_init_ratio = 0x8b - // .. .. ==> 0XF8006134[19:10] = 0x0000008BU - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00022C00U - // .. .. - EMIT_MASKWRITE(0XF8006134, 0x000FFFFFU ,0x00022C00U), - // .. .. reg_phy_wrlvl_init_ratio = 0x0 - // .. .. ==> 0XF8006138[9:0] = 0x00000000U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U - // .. .. reg_phy_gatelvl_init_ratio = 0x92 - // .. .. ==> 0XF8006138[19:10] = 0x00000092U - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00024800U - // .. .. - EMIT_MASKWRITE(0XF8006138, 0x000FFFFFU ,0x00024800U), - // .. .. reg_phy_rd_dqs_slave_ratio = 0x35 - // .. .. ==> 0XF8006140[9:0] = 0x00000035U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U - // .. .. reg_phy_rd_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006140[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_rd_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006140[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006140, 0x000FFFFFU ,0x00000035U), - // .. .. reg_phy_rd_dqs_slave_ratio = 0x35 - // .. .. ==> 0XF8006144[9:0] = 0x00000035U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U - // .. .. reg_phy_rd_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006144[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_rd_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006144[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006144, 0x000FFFFFU ,0x00000035U), - // .. .. reg_phy_rd_dqs_slave_ratio = 0x35 - // .. .. ==> 0XF8006148[9:0] = 0x00000035U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U - // .. .. reg_phy_rd_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006148[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_rd_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006148[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006148, 0x000FFFFFU ,0x00000035U), - // .. .. reg_phy_rd_dqs_slave_ratio = 0x35 - // .. .. ==> 0XF800614C[9:0] = 0x00000035U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U - // .. .. reg_phy_rd_dqs_slave_force = 0x0 - // .. .. ==> 0XF800614C[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_rd_dqs_slave_delay = 0x0 - // .. .. ==> 0XF800614C[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800614C, 0x000FFFFFU ,0x00000035U), - // .. .. reg_phy_wr_dqs_slave_ratio = 0x77 - // .. .. ==> 0XF8006154[9:0] = 0x00000077U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000077U - // .. .. reg_phy_wr_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006154[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006154[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006154, 0x000FFFFFU ,0x00000077U), - // .. .. reg_phy_wr_dqs_slave_ratio = 0x7c - // .. .. ==> 0XF8006158[9:0] = 0x0000007CU - // .. .. ==> MASK : 0x000003FFU VAL : 0x0000007CU - // .. .. reg_phy_wr_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006158[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006158[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006158, 0x000FFFFFU ,0x0000007CU), - // .. .. reg_phy_wr_dqs_slave_ratio = 0x7c - // .. .. ==> 0XF800615C[9:0] = 0x0000007CU - // .. .. ==> MASK : 0x000003FFU VAL : 0x0000007CU - // .. .. reg_phy_wr_dqs_slave_force = 0x0 - // .. .. ==> 0XF800615C[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_dqs_slave_delay = 0x0 - // .. .. ==> 0XF800615C[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800615C, 0x000FFFFFU ,0x0000007CU), - // .. .. reg_phy_wr_dqs_slave_ratio = 0x75 - // .. .. ==> 0XF8006160[9:0] = 0x00000075U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000075U - // .. .. reg_phy_wr_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006160[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006160[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006160, 0x000FFFFFU ,0x00000075U), - // .. .. reg_phy_fifo_we_slave_ratio = 0xe4 - // .. .. ==> 0XF8006168[10:0] = 0x000000E4U - // .. .. ==> MASK : 0x000007FFU VAL : 0x000000E4U - // .. .. reg_phy_fifo_we_in_force = 0x0 - // .. .. ==> 0XF8006168[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. reg_phy_fifo_we_in_delay = 0x0 - // .. .. ==> 0XF8006168[20:12] = 0x00000000U - // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006168, 0x001FFFFFU ,0x000000E4U), - // .. .. reg_phy_fifo_we_slave_ratio = 0xdf - // .. .. ==> 0XF800616C[10:0] = 0x000000DFU - // .. .. ==> MASK : 0x000007FFU VAL : 0x000000DFU - // .. .. reg_phy_fifo_we_in_force = 0x0 - // .. .. ==> 0XF800616C[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. reg_phy_fifo_we_in_delay = 0x0 - // .. .. ==> 0XF800616C[20:12] = 0x00000000U - // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800616C, 0x001FFFFFU ,0x000000DFU), - // .. .. reg_phy_fifo_we_slave_ratio = 0xe0 - // .. .. ==> 0XF8006170[10:0] = 0x000000E0U - // .. .. ==> MASK : 0x000007FFU VAL : 0x000000E0U - // .. .. reg_phy_fifo_we_in_force = 0x0 - // .. .. ==> 0XF8006170[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. reg_phy_fifo_we_in_delay = 0x0 - // .. .. ==> 0XF8006170[20:12] = 0x00000000U - // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006170, 0x001FFFFFU ,0x000000E0U), - // .. .. reg_phy_fifo_we_slave_ratio = 0xe7 - // .. .. ==> 0XF8006174[10:0] = 0x000000E7U - // .. .. ==> MASK : 0x000007FFU VAL : 0x000000E7U - // .. .. reg_phy_fifo_we_in_force = 0x0 - // .. .. ==> 0XF8006174[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. reg_phy_fifo_we_in_delay = 0x0 - // .. .. ==> 0XF8006174[20:12] = 0x00000000U - // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006174, 0x001FFFFFU ,0x000000E7U), - // .. .. reg_phy_wr_data_slave_ratio = 0xb7 - // .. .. ==> 0XF800617C[9:0] = 0x000000B7U - // .. .. ==> MASK : 0x000003FFU VAL : 0x000000B7U - // .. .. reg_phy_wr_data_slave_force = 0x0 - // .. .. ==> 0XF800617C[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_data_slave_delay = 0x0 - // .. .. ==> 0XF800617C[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800617C, 0x000FFFFFU ,0x000000B7U), - // .. .. reg_phy_wr_data_slave_ratio = 0xbc - // .. .. ==> 0XF8006180[9:0] = 0x000000BCU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000000BCU - // .. .. reg_phy_wr_data_slave_force = 0x0 - // .. .. ==> 0XF8006180[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_data_slave_delay = 0x0 - // .. .. ==> 0XF8006180[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006180, 0x000FFFFFU ,0x000000BCU), - // .. .. reg_phy_wr_data_slave_ratio = 0xbc - // .. .. ==> 0XF8006184[9:0] = 0x000000BCU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000000BCU - // .. .. reg_phy_wr_data_slave_force = 0x0 - // .. .. ==> 0XF8006184[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_data_slave_delay = 0x0 - // .. .. ==> 0XF8006184[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006184, 0x000FFFFFU ,0x000000BCU), - // .. .. reg_phy_wr_data_slave_ratio = 0xb5 - // .. .. ==> 0XF8006188[9:0] = 0x000000B5U - // .. .. ==> MASK : 0x000003FFU VAL : 0x000000B5U - // .. .. reg_phy_wr_data_slave_force = 0x0 - // .. .. ==> 0XF8006188[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_data_slave_delay = 0x0 - // .. .. ==> 0XF8006188[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006188, 0x000FFFFFU ,0x000000B5U), - // .. .. reg_phy_bl2 = 0x0 - // .. .. ==> 0XF8006190[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_at_spd_atpg = 0x0 - // .. .. ==> 0XF8006190[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_bist_enable = 0x0 - // .. .. ==> 0XF8006190[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_bist_force_err = 0x0 - // .. .. ==> 0XF8006190[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reg_phy_bist_mode = 0x0 - // .. .. ==> 0XF8006190[6:5] = 0x00000000U - // .. .. ==> MASK : 0x00000060U VAL : 0x00000000U - // .. .. reg_phy_invert_clkout = 0x1 - // .. .. ==> 0XF8006190[7:7] = 0x00000001U - // .. .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. .. reg_phy_sel_logic = 0x0 - // .. .. ==> 0XF8006190[9:9] = 0x00000000U - // .. .. ==> MASK : 0x00000200U VAL : 0x00000000U - // .. .. reg_phy_ctrl_slave_ratio = 0x100 - // .. .. ==> 0XF8006190[19:10] = 0x00000100U - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00040000U - // .. .. reg_phy_ctrl_slave_force = 0x0 - // .. .. ==> 0XF8006190[20:20] = 0x00000000U - // .. .. ==> MASK : 0x00100000U VAL : 0x00000000U - // .. .. reg_phy_ctrl_slave_delay = 0x0 - // .. .. ==> 0XF8006190[27:21] = 0x00000000U - // .. .. ==> MASK : 0x0FE00000U VAL : 0x00000000U - // .. .. reg_phy_lpddr = 0x0 - // .. .. ==> 0XF8006190[29:29] = 0x00000000U - // .. .. ==> MASK : 0x20000000U VAL : 0x00000000U - // .. .. reg_phy_cmd_latency = 0x0 - // .. .. ==> 0XF8006190[30:30] = 0x00000000U - // .. .. ==> MASK : 0x40000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006190, 0x6FFFFEFEU ,0x00040080U), - // .. .. reg_phy_wr_rl_delay = 0x2 - // .. .. ==> 0XF8006194[4:0] = 0x00000002U - // .. .. ==> MASK : 0x0000001FU VAL : 0x00000002U - // .. .. reg_phy_rd_rl_delay = 0x4 - // .. .. ==> 0XF8006194[9:5] = 0x00000004U - // .. .. ==> MASK : 0x000003E0U VAL : 0x00000080U - // .. .. reg_phy_dll_lock_diff = 0xf - // .. .. ==> 0XF8006194[13:10] = 0x0000000FU - // .. .. ==> MASK : 0x00003C00U VAL : 0x00003C00U - // .. .. reg_phy_use_wr_level = 0x1 - // .. .. ==> 0XF8006194[14:14] = 0x00000001U - // .. .. ==> MASK : 0x00004000U VAL : 0x00004000U - // .. .. reg_phy_use_rd_dqs_gate_level = 0x1 - // .. .. ==> 0XF8006194[15:15] = 0x00000001U - // .. .. ==> MASK : 0x00008000U VAL : 0x00008000U - // .. .. reg_phy_use_rd_data_eye_level = 0x1 - // .. .. ==> 0XF8006194[16:16] = 0x00000001U - // .. .. ==> MASK : 0x00010000U VAL : 0x00010000U - // .. .. reg_phy_dis_calib_rst = 0x0 - // .. .. ==> 0XF8006194[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_phy_ctrl_slave_delay = 0x0 - // .. .. ==> 0XF8006194[19:18] = 0x00000000U - // .. .. ==> MASK : 0x000C0000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006194, 0x000FFFFFU ,0x0001FC82U), - // .. .. reg_arb_page_addr_mask = 0x0 - // .. .. ==> 0XF8006204[31:0] = 0x00000000U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006204, 0xFFFFFFFFU ,0x00000000U), - // .. .. reg_arb_pri_wr_portn = 0x3ff - // .. .. ==> 0XF8006208[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_wr_portn = 0x0 - // .. .. ==> 0XF8006208[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_wr_portn = 0x0 - // .. .. ==> 0XF8006208[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_wr_portn = 0x0 - // .. .. ==> 0XF8006208[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006208, 0x000703FFU ,0x000003FFU), - // .. .. reg_arb_pri_wr_portn = 0x3ff - // .. .. ==> 0XF800620C[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_wr_portn = 0x0 - // .. .. ==> 0XF800620C[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_wr_portn = 0x0 - // .. .. ==> 0XF800620C[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_wr_portn = 0x0 - // .. .. ==> 0XF800620C[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800620C, 0x000703FFU ,0x000003FFU), - // .. .. reg_arb_pri_wr_portn = 0x3ff - // .. .. ==> 0XF8006210[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_wr_portn = 0x0 - // .. .. ==> 0XF8006210[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_wr_portn = 0x0 - // .. .. ==> 0XF8006210[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_wr_portn = 0x0 - // .. .. ==> 0XF8006210[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006210, 0x000703FFU ,0x000003FFU), - // .. .. reg_arb_pri_wr_portn = 0x3ff - // .. .. ==> 0XF8006214[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_wr_portn = 0x0 - // .. .. ==> 0XF8006214[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_wr_portn = 0x0 - // .. .. ==> 0XF8006214[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_wr_portn = 0x0 - // .. .. ==> 0XF8006214[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006214, 0x000703FFU ,0x000003FFU), - // .. .. reg_arb_pri_rd_portn = 0x3ff - // .. .. ==> 0XF8006218[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_rd_portn = 0x0 - // .. .. ==> 0XF8006218[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_rd_portn = 0x0 - // .. .. ==> 0XF8006218[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_rd_portn = 0x0 - // .. .. ==> 0XF8006218[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_set_hpr_rd_portn = 0x0 - // .. .. ==> 0XF8006218[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006218, 0x000F03FFU ,0x000003FFU), - // .. .. reg_arb_pri_rd_portn = 0x3ff - // .. .. ==> 0XF800621C[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_rd_portn = 0x0 - // .. .. ==> 0XF800621C[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_rd_portn = 0x0 - // .. .. ==> 0XF800621C[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_rd_portn = 0x0 - // .. .. ==> 0XF800621C[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_set_hpr_rd_portn = 0x0 - // .. .. ==> 0XF800621C[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800621C, 0x000F03FFU ,0x000003FFU), - // .. .. reg_arb_pri_rd_portn = 0x3ff - // .. .. ==> 0XF8006220[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_rd_portn = 0x0 - // .. .. ==> 0XF8006220[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_rd_portn = 0x0 - // .. .. ==> 0XF8006220[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_rd_portn = 0x0 - // .. .. ==> 0XF8006220[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_set_hpr_rd_portn = 0x0 - // .. .. ==> 0XF8006220[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006220, 0x000F03FFU ,0x000003FFU), - // .. .. reg_arb_pri_rd_portn = 0x3ff - // .. .. ==> 0XF8006224[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_rd_portn = 0x0 - // .. .. ==> 0XF8006224[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_rd_portn = 0x0 - // .. .. ==> 0XF8006224[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_rd_portn = 0x0 - // .. .. ==> 0XF8006224[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_set_hpr_rd_portn = 0x0 - // .. .. ==> 0XF8006224[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006224, 0x000F03FFU ,0x000003FFU), - // .. .. reg_ddrc_lpddr2 = 0x0 - // .. .. ==> 0XF80062A8[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_derate_enable = 0x0 - // .. .. ==> 0XF80062A8[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_ddrc_mr4_margin = 0x0 - // .. .. ==> 0XF80062A8[11:4] = 0x00000000U - // .. .. ==> MASK : 0x00000FF0U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80062A8, 0x00000FF5U ,0x00000000U), - // .. .. reg_ddrc_mr4_read_interval = 0x0 - // .. .. ==> 0XF80062AC[31:0] = 0x00000000U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80062AC, 0xFFFFFFFFU ,0x00000000U), - // .. .. reg_ddrc_min_stable_clock_x1 = 0x5 - // .. .. ==> 0XF80062B0[3:0] = 0x00000005U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000005U - // .. .. reg_ddrc_idle_after_reset_x32 = 0x12 - // .. .. ==> 0XF80062B0[11:4] = 0x00000012U - // .. .. ==> MASK : 0x00000FF0U VAL : 0x00000120U - // .. .. reg_ddrc_t_mrw = 0x5 - // .. .. ==> 0XF80062B0[21:12] = 0x00000005U - // .. .. ==> MASK : 0x003FF000U VAL : 0x00005000U - // .. .. - EMIT_MASKWRITE(0XF80062B0, 0x003FFFFFU ,0x00005125U), - // .. .. reg_ddrc_max_auto_init_x1024 = 0xa6 - // .. .. ==> 0XF80062B4[7:0] = 0x000000A6U - // .. .. ==> MASK : 0x000000FFU VAL : 0x000000A6U - // .. .. reg_ddrc_dev_zqinit_x32 = 0x12 - // .. .. ==> 0XF80062B4[17:8] = 0x00000012U - // .. .. ==> MASK : 0x0003FF00U VAL : 0x00001200U - // .. .. - EMIT_MASKWRITE(0XF80062B4, 0x0003FFFFU ,0x000012A6U), - // .. .. START: POLL ON DCI STATUS - // .. .. DONE = 1 - // .. .. ==> 0XF8000B74[13:13] = 0x00000001U - // .. .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. .. - EMIT_MASKPOLL(0XF8000B74, 0x00002000U), - // .. .. FINISH: POLL ON DCI STATUS - // .. .. START: UNLOCK DDR - // .. .. reg_ddrc_soft_rstb = 0x1 - // .. .. ==> 0XF8006000[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_ddrc_powerdown_en = 0x0 - // .. .. ==> 0XF8006000[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_ddrc_data_bus_width = 0x0 - // .. .. ==> 0XF8006000[3:2] = 0x00000000U - // .. .. ==> MASK : 0x0000000CU VAL : 0x00000000U - // .. .. reg_ddrc_burst8_refresh = 0x0 - // .. .. ==> 0XF8006000[6:4] = 0x00000000U - // .. .. ==> MASK : 0x00000070U VAL : 0x00000000U - // .. .. reg_ddrc_rdwr_idle_gap = 1 - // .. .. ==> 0XF8006000[13:7] = 0x00000001U - // .. .. ==> MASK : 0x00003F80U VAL : 0x00000080U - // .. .. reg_ddrc_dis_rd_bypass = 0x0 - // .. .. ==> 0XF8006000[14:14] = 0x00000000U - // .. .. ==> MASK : 0x00004000U VAL : 0x00000000U - // .. .. reg_ddrc_dis_act_bypass = 0x0 - // .. .. ==> 0XF8006000[15:15] = 0x00000000U - // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U - // .. .. reg_ddrc_dis_auto_refresh = 0x0 - // .. .. ==> 0XF8006000[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006000, 0x0001FFFFU ,0x00000081U), - // .. .. FINISH: UNLOCK DDR - // .. .. START: CHECK DDR STATUS - // .. .. ddrc_reg_operating_mode = 1 - // .. .. ==> 0XF8006054[2:0] = 0x00000001U - // .. .. ==> MASK : 0x00000007U VAL : 0x00000001U - // .. .. - EMIT_MASKPOLL(0XF8006054, 0x00000007U), - // .. .. FINISH: CHECK DDR STATUS - // .. FINISH: DDR INITIALIZATION - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_mio_init_data_3_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: OCM REMAPPING - // .. VREF_EN = 0x1 - // .. ==> 0XF8000B00[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. VREF_SEL = 0x0 - // .. ==> 0XF8000B00[6:4] = 0x00000000U - // .. ==> MASK : 0x00000070U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B00, 0x00000071U ,0x00000001U), - // .. FINISH: OCM REMAPPING - // .. START: DDRIOB SETTINGS - // .. reserved_INP_POWER = 0x0 - // .. ==> 0XF8000B40[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x0 - // .. ==> 0XF8000B40[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. DCI_UPDATE_B = 0x0 - // .. ==> 0XF8000B40[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x0 - // .. ==> 0XF8000B40[4:4] = 0x00000000U - // .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. DCI_TYPE = 0x0 - // .. ==> 0XF8000B40[6:5] = 0x00000000U - // .. ==> MASK : 0x00000060U VAL : 0x00000000U - // .. IBUF_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B40[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B40[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B40[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B40[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B40, 0x00000FFFU ,0x00000600U), - // .. reserved_INP_POWER = 0x0 - // .. ==> 0XF8000B44[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x0 - // .. ==> 0XF8000B44[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. DCI_UPDATE_B = 0x0 - // .. ==> 0XF8000B44[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x0 - // .. ==> 0XF8000B44[4:4] = 0x00000000U - // .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. DCI_TYPE = 0x0 - // .. ==> 0XF8000B44[6:5] = 0x00000000U - // .. ==> MASK : 0x00000060U VAL : 0x00000000U - // .. IBUF_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B44[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B44[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B44[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B44[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B44, 0x00000FFFU ,0x00000600U), - // .. reserved_INP_POWER = 0x0 - // .. ==> 0XF8000B48[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x1 - // .. ==> 0XF8000B48[2:1] = 0x00000001U - // .. ==> MASK : 0x00000006U VAL : 0x00000002U - // .. DCI_UPDATE_B = 0x0 - // .. ==> 0XF8000B48[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x1 - // .. ==> 0XF8000B48[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. DCI_TYPE = 0x3 - // .. ==> 0XF8000B48[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. IBUF_DISABLE_MODE = 0 - // .. ==> 0XF8000B48[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0 - // .. ==> 0XF8000B48[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B48[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B48[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B48, 0x00000FFFU ,0x00000672U), - // .. reserved_INP_POWER = 0x0 - // .. ==> 0XF8000B4C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x1 - // .. ==> 0XF8000B4C[2:1] = 0x00000001U - // .. ==> MASK : 0x00000006U VAL : 0x00000002U - // .. DCI_UPDATE_B = 0x0 - // .. ==> 0XF8000B4C[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x1 - // .. ==> 0XF8000B4C[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. DCI_TYPE = 0x3 - // .. ==> 0XF8000B4C[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. IBUF_DISABLE_MODE = 0 - // .. ==> 0XF8000B4C[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0 - // .. ==> 0XF8000B4C[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B4C[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B4C[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B4C, 0x00000FFFU ,0x00000672U), - // .. reserved_INP_POWER = 0x0 - // .. ==> 0XF8000B50[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x2 - // .. ==> 0XF8000B50[2:1] = 0x00000002U - // .. ==> MASK : 0x00000006U VAL : 0x00000004U - // .. DCI_UPDATE_B = 0x0 - // .. ==> 0XF8000B50[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x1 - // .. ==> 0XF8000B50[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. DCI_TYPE = 0x3 - // .. ==> 0XF8000B50[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. IBUF_DISABLE_MODE = 0 - // .. ==> 0XF8000B50[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0 - // .. ==> 0XF8000B50[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B50[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B50[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B50, 0x00000FFFU ,0x00000674U), - // .. reserved_INP_POWER = 0x0 - // .. ==> 0XF8000B54[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x2 - // .. ==> 0XF8000B54[2:1] = 0x00000002U - // .. ==> MASK : 0x00000006U VAL : 0x00000004U - // .. DCI_UPDATE_B = 0x0 - // .. ==> 0XF8000B54[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x1 - // .. ==> 0XF8000B54[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. DCI_TYPE = 0x3 - // .. ==> 0XF8000B54[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. IBUF_DISABLE_MODE = 0 - // .. ==> 0XF8000B54[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0 - // .. ==> 0XF8000B54[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B54[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B54[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B54, 0x00000FFFU ,0x00000674U), - // .. reserved_INP_POWER = 0x0 - // .. ==> 0XF8000B58[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x0 - // .. ==> 0XF8000B58[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. DCI_UPDATE_B = 0x0 - // .. ==> 0XF8000B58[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x0 - // .. ==> 0XF8000B58[4:4] = 0x00000000U - // .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. DCI_TYPE = 0x0 - // .. ==> 0XF8000B58[6:5] = 0x00000000U - // .. ==> MASK : 0x00000060U VAL : 0x00000000U - // .. IBUF_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B58[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B58[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B58[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B58[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B58, 0x00000FFFU ,0x00000600U), - // .. reserved_DRIVE_P = 0x1c - // .. ==> 0XF8000B5C[6:0] = 0x0000001CU - // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU - // .. reserved_DRIVE_N = 0xc - // .. ==> 0XF8000B5C[13:7] = 0x0000000CU - // .. ==> MASK : 0x00003F80U VAL : 0x00000600U - // .. reserved_SLEW_P = 0x3 - // .. ==> 0XF8000B5C[18:14] = 0x00000003U - // .. ==> MASK : 0x0007C000U VAL : 0x0000C000U - // .. reserved_SLEW_N = 0x3 - // .. ==> 0XF8000B5C[23:19] = 0x00000003U - // .. ==> MASK : 0x00F80000U VAL : 0x00180000U - // .. reserved_GTL = 0x0 - // .. ==> 0XF8000B5C[26:24] = 0x00000000U - // .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. reserved_RTERM = 0x0 - // .. ==> 0XF8000B5C[31:27] = 0x00000000U - // .. ==> MASK : 0xF8000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B5C, 0xFFFFFFFFU ,0x0018C61CU), - // .. reserved_DRIVE_P = 0x1c - // .. ==> 0XF8000B60[6:0] = 0x0000001CU - // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU - // .. reserved_DRIVE_N = 0xc - // .. ==> 0XF8000B60[13:7] = 0x0000000CU - // .. ==> MASK : 0x00003F80U VAL : 0x00000600U - // .. reserved_SLEW_P = 0x6 - // .. ==> 0XF8000B60[18:14] = 0x00000006U - // .. ==> MASK : 0x0007C000U VAL : 0x00018000U - // .. reserved_SLEW_N = 0x1f - // .. ==> 0XF8000B60[23:19] = 0x0000001FU - // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U - // .. reserved_GTL = 0x0 - // .. ==> 0XF8000B60[26:24] = 0x00000000U - // .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. reserved_RTERM = 0x0 - // .. ==> 0XF8000B60[31:27] = 0x00000000U - // .. ==> MASK : 0xF8000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B60, 0xFFFFFFFFU ,0x00F9861CU), - // .. reserved_DRIVE_P = 0x1c - // .. ==> 0XF8000B64[6:0] = 0x0000001CU - // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU - // .. reserved_DRIVE_N = 0xc - // .. ==> 0XF8000B64[13:7] = 0x0000000CU - // .. ==> MASK : 0x00003F80U VAL : 0x00000600U - // .. reserved_SLEW_P = 0x6 - // .. ==> 0XF8000B64[18:14] = 0x00000006U - // .. ==> MASK : 0x0007C000U VAL : 0x00018000U - // .. reserved_SLEW_N = 0x1f - // .. ==> 0XF8000B64[23:19] = 0x0000001FU - // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U - // .. reserved_GTL = 0x0 - // .. ==> 0XF8000B64[26:24] = 0x00000000U - // .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. reserved_RTERM = 0x0 - // .. ==> 0XF8000B64[31:27] = 0x00000000U - // .. ==> MASK : 0xF8000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B64, 0xFFFFFFFFU ,0x00F9861CU), - // .. reserved_DRIVE_P = 0x1c - // .. ==> 0XF8000B68[6:0] = 0x0000001CU - // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU - // .. reserved_DRIVE_N = 0xc - // .. ==> 0XF8000B68[13:7] = 0x0000000CU - // .. ==> MASK : 0x00003F80U VAL : 0x00000600U - // .. reserved_SLEW_P = 0x6 - // .. ==> 0XF8000B68[18:14] = 0x00000006U - // .. ==> MASK : 0x0007C000U VAL : 0x00018000U - // .. reserved_SLEW_N = 0x1f - // .. ==> 0XF8000B68[23:19] = 0x0000001FU - // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U - // .. reserved_GTL = 0x0 - // .. ==> 0XF8000B68[26:24] = 0x00000000U - // .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. reserved_RTERM = 0x0 - // .. ==> 0XF8000B68[31:27] = 0x00000000U - // .. ==> MASK : 0xF8000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B68, 0xFFFFFFFFU ,0x00F9861CU), - // .. VREF_INT_EN = 0x0 - // .. ==> 0XF8000B6C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. VREF_SEL = 0x0 - // .. ==> 0XF8000B6C[4:1] = 0x00000000U - // .. ==> MASK : 0x0000001EU VAL : 0x00000000U - // .. VREF_EXT_EN = 0x3 - // .. ==> 0XF8000B6C[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. reserved_VREF_PULLUP_EN = 0x0 - // .. ==> 0XF8000B6C[8:7] = 0x00000000U - // .. ==> MASK : 0x00000180U VAL : 0x00000000U - // .. REFIO_EN = 0x1 - // .. ==> 0XF8000B6C[9:9] = 0x00000001U - // .. ==> MASK : 0x00000200U VAL : 0x00000200U - // .. reserved_REFIO_TEST = 0x0 - // .. ==> 0XF8000B6C[11:10] = 0x00000000U - // .. ==> MASK : 0x00000C00U VAL : 0x00000000U - // .. reserved_REFIO_PULLUP_EN = 0x0 - // .. ==> 0XF8000B6C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. reserved_DRST_B_PULLUP_EN = 0x0 - // .. ==> 0XF8000B6C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. reserved_CKE_PULLUP_EN = 0x0 - // .. ==> 0XF8000B6C[14:14] = 0x00000000U - // .. ==> MASK : 0x00004000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B6C, 0x00007FFFU ,0x00000260U), - // .. .. START: ASSERT RESET - // .. .. RESET = 1 - // .. .. ==> 0XF8000B70[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. - EMIT_MASKWRITE(0XF8000B70, 0x00000001U ,0x00000001U), - // .. .. FINISH: ASSERT RESET - // .. .. START: DEASSERT RESET - // .. .. RESET = 0 - // .. .. ==> 0XF8000B70[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reserved_VRN_OUT = 0x1 - // .. .. ==> 0XF8000B70[5:5] = 0x00000001U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000020U - // .. .. - EMIT_MASKWRITE(0XF8000B70, 0x00000021U ,0x00000020U), - // .. .. FINISH: DEASSERT RESET - // .. .. RESET = 0x1 - // .. .. ==> 0XF8000B70[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. ENABLE = 0x1 - // .. .. ==> 0XF8000B70[1:1] = 0x00000001U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. .. reserved_VRP_TRI = 0x0 - // .. .. ==> 0XF8000B70[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reserved_VRN_TRI = 0x0 - // .. .. ==> 0XF8000B70[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reserved_VRP_OUT = 0x0 - // .. .. ==> 0XF8000B70[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reserved_VRN_OUT = 0x1 - // .. .. ==> 0XF8000B70[5:5] = 0x00000001U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000020U - // .. .. NREF_OPT1 = 0x0 - // .. .. ==> 0XF8000B70[7:6] = 0x00000000U - // .. .. ==> MASK : 0x000000C0U VAL : 0x00000000U - // .. .. NREF_OPT2 = 0x0 - // .. .. ==> 0XF8000B70[10:8] = 0x00000000U - // .. .. ==> MASK : 0x00000700U VAL : 0x00000000U - // .. .. NREF_OPT4 = 0x1 - // .. .. ==> 0XF8000B70[13:11] = 0x00000001U - // .. .. ==> MASK : 0x00003800U VAL : 0x00000800U - // .. .. PREF_OPT1 = 0x0 - // .. .. ==> 0XF8000B70[15:14] = 0x00000000U - // .. .. ==> MASK : 0x0000C000U VAL : 0x00000000U - // .. .. PREF_OPT2 = 0x0 - // .. .. ==> 0XF8000B70[19:17] = 0x00000000U - // .. .. ==> MASK : 0x000E0000U VAL : 0x00000000U - // .. .. UPDATE_CONTROL = 0x0 - // .. .. ==> 0XF8000B70[20:20] = 0x00000000U - // .. .. ==> MASK : 0x00100000U VAL : 0x00000000U - // .. .. reserved_INIT_COMPLETE = 0x0 - // .. .. ==> 0XF8000B70[21:21] = 0x00000000U - // .. .. ==> MASK : 0x00200000U VAL : 0x00000000U - // .. .. reserved_TST_CLK = 0x0 - // .. .. ==> 0XF8000B70[22:22] = 0x00000000U - // .. .. ==> MASK : 0x00400000U VAL : 0x00000000U - // .. .. reserved_TST_HLN = 0x0 - // .. .. ==> 0XF8000B70[23:23] = 0x00000000U - // .. .. ==> MASK : 0x00800000U VAL : 0x00000000U - // .. .. reserved_TST_HLP = 0x0 - // .. .. ==> 0XF8000B70[24:24] = 0x00000000U - // .. .. ==> MASK : 0x01000000U VAL : 0x00000000U - // .. .. reserved_TST_RST = 0x0 - // .. .. ==> 0XF8000B70[25:25] = 0x00000000U - // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U - // .. .. reserved_INT_DCI_EN = 0x0 - // .. .. ==> 0XF8000B70[26:26] = 0x00000000U - // .. .. ==> MASK : 0x04000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8000B70, 0x07FEFFFFU ,0x00000823U), - // .. FINISH: DDRIOB SETTINGS - // .. START: MIO PROGRAMMING - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000700[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000700[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000700[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000700[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000700[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF8000700[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000700[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000700[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000700[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000700, 0x00003FFFU ,0x00001600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000704[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000704[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000704[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000704[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000704[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000704[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000704[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000704[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000704[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000704, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000708[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000708[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000708[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000708[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000708[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000708[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000708[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000708[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000708[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000708, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800070C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF800070C[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF800070C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800070C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800070C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800070C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF800070C[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF800070C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800070C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800070C, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000710[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000710[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000710[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000710[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000710[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000710[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000710[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000710[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000710[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000710, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000714[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000714[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000714[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000714[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000714[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000714[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000714[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000714[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000714[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000714, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000718[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000718[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000718[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000718[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000718[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000718[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000718[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000718[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000718[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000718, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800071C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800071C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF800071C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800071C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800071C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF800071C[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF800071C[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF800071C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800071C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800071C, 0x00003FFFU ,0x00000600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000720[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000720[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000720[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000720[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000720[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000720[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000720[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000720[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000720[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000720, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000724[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000724[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000724[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000724[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000724[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF8000724[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000724[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000724[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000724[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000724, 0x00003FFFU ,0x00001600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000728[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000728[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000728[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000728[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 2 - // .. ==> 0XF8000728[7:5] = 0x00000002U - // .. ==> MASK : 0x000000E0U VAL : 0x00000040U - // .. Speed = 0 - // .. ==> 0XF8000728[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000728[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000728[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000728[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000728, 0x00003FFFU ,0x00001640U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800072C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800072C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF800072C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800072C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 2 - // .. ==> 0XF800072C[7:5] = 0x00000002U - // .. ==> MASK : 0x000000E0U VAL : 0x00000040U - // .. Speed = 0 - // .. ==> 0XF800072C[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF800072C[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF800072C[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF800072C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800072C, 0x00003FFFU ,0x00001640U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000730[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000730[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000730[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000730[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 2 - // .. ==> 0XF8000730[7:5] = 0x00000002U - // .. ==> MASK : 0x000000E0U VAL : 0x00000040U - // .. Speed = 0 - // .. ==> 0XF8000730[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000730[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000730[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000730[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000730, 0x00003FFFU ,0x00001640U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000734[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000734[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000734[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000734[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 2 - // .. ==> 0XF8000734[7:5] = 0x00000002U - // .. ==> MASK : 0x000000E0U VAL : 0x00000040U - // .. Speed = 0 - // .. ==> 0XF8000734[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000734[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000734[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000734[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000734, 0x00003FFFU ,0x00001640U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000738[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000738[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000738[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000738[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000738[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF8000738[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000738[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000738[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000738[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000738, 0x00003FFFU ,0x00001600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800073C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800073C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF800073C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800073C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800073C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF800073C[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF800073C[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF800073C[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF800073C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800073C, 0x00003FFFU ,0x00001600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000740[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000740[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000740[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000740[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000740[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000740[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000740[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000740[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000740[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000740, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000744[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000744[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000744[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000744[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000744[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000744[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000744[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000744[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000744[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000744, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000748[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000748[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000748[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000748[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000748[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000748[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000748[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000748[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000748[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000748, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800074C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF800074C[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF800074C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800074C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800074C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800074C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF800074C[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF800074C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF800074C[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF800074C, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000750[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000750[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000750[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000750[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000750[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000750[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000750[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000750[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000750[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000750, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000754[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000754[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000754[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000754[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000754[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000754[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000754[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000754[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000754[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000754, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000758[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF8000758[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000758[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000758[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000758[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000758[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000758[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000758[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000758[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000758, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF800075C[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF800075C[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF800075C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800075C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800075C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800075C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF800075C[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF800075C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800075C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800075C, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000760[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF8000760[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000760[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000760[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000760[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000760[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000760[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000760[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000760[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000760, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000764[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF8000764[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000764[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000764[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000764[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000764[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000764[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000764[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000764[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000764, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000768[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF8000768[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000768[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000768[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000768[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000768[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000768[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000768[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000768[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000768, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF800076C[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF800076C[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF800076C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800076C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800076C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800076C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF800076C[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF800076C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800076C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800076C, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000770[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000770[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000770[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000770[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000770[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000770[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000770[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000770[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000770[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000770, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000774[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 0 - // .. ==> 0XF8000774[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000774[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000774[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000774[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000774[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000774[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000774[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000774[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000774, 0x00003FFFU ,0x00000305U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000778[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000778[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000778[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000778[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000778[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000778[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000778[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000778[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000778[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000778, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF800077C[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 0 - // .. ==> 0XF800077C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF800077C[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF800077C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800077C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800077C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF800077C[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF800077C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800077C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800077C, 0x00003FFFU ,0x00000305U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000780[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000780[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000780[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000780[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000780[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000780[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000780[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000780[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000780[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000780, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000784[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000784[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000784[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000784[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000784[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000784[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000784[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000784[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000784[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000784, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000788[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000788[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000788[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000788[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000788[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000788[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000788[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000788[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000788[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000788, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800078C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800078C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF800078C[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF800078C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800078C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800078C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF800078C[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF800078C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800078C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800078C, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000790[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 0 - // .. ==> 0XF8000790[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000790[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000790[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000790[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000790[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000790[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000790[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000790[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000790, 0x00003FFFU ,0x00000305U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000794[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000794[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000794[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000794[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000794[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000794[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000794[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000794[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000794[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000794, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000798[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000798[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000798[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000798[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000798[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000798[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000798[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000798[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000798[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000798, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800079C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800079C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF800079C[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF800079C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800079C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800079C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF800079C[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF800079C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800079C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800079C, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007A0[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007A0[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007A0[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007A0[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007A0[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007A0[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007A0[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007A0[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007A0[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007A0, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007A4[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007A4[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007A4[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007A4[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007A4[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007A4[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007A4[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007A4[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007A4[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007A4, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007A8[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007A8[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007A8[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007A8[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007A8[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007A8[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007A8[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007A8[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007A8[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007A8, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007AC[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007AC[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007AC[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007AC[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007AC[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007AC[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007AC[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007AC[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007AC[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007AC, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007B0[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007B0[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007B0[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007B0[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007B0[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007B0[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007B0[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007B0[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007B0[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007B0, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007B4[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007B4[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007B4[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007B4[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007B4[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007B4[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007B4[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007B4[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007B4[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007B4, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007B8[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007B8[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007B8[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007B8[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007B8[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007B8[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007B8[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 1 - // .. ==> 0XF80007B8[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007B8[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007B8, 0x00003FFFU ,0x00001200U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF80007BC[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. Speed = 0 - // .. ==> 0XF80007BC[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007BC[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007BC[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007BC[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007BC, 0x00003F01U ,0x00000201U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007C0[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007C0[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007C0[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007C0[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 7 - // .. ==> 0XF80007C0[7:5] = 0x00000007U - // .. ==> MASK : 0x000000E0U VAL : 0x000000E0U - // .. Speed = 0 - // .. ==> 0XF80007C0[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007C0[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007C0[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007C0[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007C0, 0x00003FFFU ,0x000002E0U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF80007C4[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 0 - // .. ==> 0XF80007C4[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007C4[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007C4[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 7 - // .. ==> 0XF80007C4[7:5] = 0x00000007U - // .. ==> MASK : 0x000000E0U VAL : 0x000000E0U - // .. Speed = 0 - // .. ==> 0XF80007C4[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007C4[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007C4[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007C4[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007C4, 0x00003FFFU ,0x000002E1U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007C8[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007C8[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007C8[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007C8[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007C8[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007C8[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007C8[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007C8[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007C8[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007C8, 0x00003FFFU ,0x00000200U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007CC[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007CC[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007CC[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007CC[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007CC[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007CC[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007CC[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007CC[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007CC[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007CC, 0x00003FFFU ,0x00000200U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007D0[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007D0[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007D0[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007D0[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007D0[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007D0[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007D0[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007D0[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007D0[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007D0, 0x00003FFFU ,0x00000200U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007D4[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007D4[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007D4[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007D4[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007D4[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007D4[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007D4[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007D4[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007D4[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007D4, 0x00003FFFU ,0x00000200U), - // .. SDIO0_WP_SEL = 55 - // .. ==> 0XF8000830[5:0] = 0x00000037U - // .. ==> MASK : 0x0000003FU VAL : 0x00000037U - // .. SDIO0_CD_SEL = 47 - // .. ==> 0XF8000830[21:16] = 0x0000002FU - // .. ==> MASK : 0x003F0000U VAL : 0x002F0000U - // .. - EMIT_MASKWRITE(0XF8000830, 0x003F003FU ,0x002F0037U), - // .. FINISH: MIO PROGRAMMING - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_peripherals_init_data_3_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: DDR TERM/IBUF_DISABLE_MODE SETTINGS - // .. IBUF_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B48[7:7] = 0x00000001U - // .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. TERM_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B48[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. - EMIT_MASKWRITE(0XF8000B48, 0x00000180U ,0x00000180U), - // .. IBUF_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B4C[7:7] = 0x00000001U - // .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. TERM_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B4C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. - EMIT_MASKWRITE(0XF8000B4C, 0x00000180U ,0x00000180U), - // .. IBUF_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B50[7:7] = 0x00000001U - // .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. TERM_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B50[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. - EMIT_MASKWRITE(0XF8000B50, 0x00000180U ,0x00000180U), - // .. IBUF_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B54[7:7] = 0x00000001U - // .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. TERM_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B54[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. - EMIT_MASKWRITE(0XF8000B54, 0x00000180U ,0x00000180U), - // .. FINISH: DDR TERM/IBUF_DISABLE_MODE SETTINGS - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // .. START: SRAM/NOR SET OPMODE - // .. FINISH: SRAM/NOR SET OPMODE - // .. START: UART REGISTERS - // .. BDIV = 0x6 - // .. ==> 0XE0001034[7:0] = 0x00000006U - // .. ==> MASK : 0x000000FFU VAL : 0x00000006U - // .. - EMIT_MASKWRITE(0XE0001034, 0x000000FFU ,0x00000006U), - // .. CD = 0x7c - // .. ==> 0XE0001018[15:0] = 0x0000007CU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000007CU - // .. - EMIT_MASKWRITE(0XE0001018, 0x0000FFFFU ,0x0000007CU), - // .. STPBRK = 0x0 - // .. ==> 0XE0001000[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. STTBRK = 0x0 - // .. ==> 0XE0001000[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. RSTTO = 0x0 - // .. ==> 0XE0001000[6:6] = 0x00000000U - // .. ==> MASK : 0x00000040U VAL : 0x00000000U - // .. TXDIS = 0x0 - // .. ==> 0XE0001000[5:5] = 0x00000000U - // .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. TXEN = 0x1 - // .. ==> 0XE0001000[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. RXDIS = 0x0 - // .. ==> 0XE0001000[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. RXEN = 0x1 - // .. ==> 0XE0001000[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. TXRES = 0x1 - // .. ==> 0XE0001000[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. RXRES = 0x1 - // .. ==> 0XE0001000[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. - EMIT_MASKWRITE(0XE0001000, 0x000001FFU ,0x00000017U), - // .. CHMODE = 0x0 - // .. ==> 0XE0001004[9:8] = 0x00000000U - // .. ==> MASK : 0x00000300U VAL : 0x00000000U - // .. NBSTOP = 0x0 - // .. ==> 0XE0001004[7:6] = 0x00000000U - // .. ==> MASK : 0x000000C0U VAL : 0x00000000U - // .. PAR = 0x4 - // .. ==> 0XE0001004[5:3] = 0x00000004U - // .. ==> MASK : 0x00000038U VAL : 0x00000020U - // .. CHRL = 0x0 - // .. ==> 0XE0001004[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. CLKS = 0x0 - // .. ==> 0XE0001004[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XE0001004, 0x000003FFU ,0x00000020U), - // .. BDIV = 0x6 - // .. ==> 0XE0000034[7:0] = 0x00000006U - // .. ==> MASK : 0x000000FFU VAL : 0x00000006U - // .. - EMIT_MASKWRITE(0XE0000034, 0x000000FFU ,0x00000006U), - // .. CD = 0x7c - // .. ==> 0XE0000018[15:0] = 0x0000007CU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000007CU - // .. - EMIT_MASKWRITE(0XE0000018, 0x0000FFFFU ,0x0000007CU), - // .. STPBRK = 0x0 - // .. ==> 0XE0000000[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. STTBRK = 0x0 - // .. ==> 0XE0000000[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. RSTTO = 0x0 - // .. ==> 0XE0000000[6:6] = 0x00000000U - // .. ==> MASK : 0x00000040U VAL : 0x00000000U - // .. TXDIS = 0x0 - // .. ==> 0XE0000000[5:5] = 0x00000000U - // .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. TXEN = 0x1 - // .. ==> 0XE0000000[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. RXDIS = 0x0 - // .. ==> 0XE0000000[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. RXEN = 0x1 - // .. ==> 0XE0000000[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. TXRES = 0x1 - // .. ==> 0XE0000000[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. RXRES = 0x1 - // .. ==> 0XE0000000[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. - EMIT_MASKWRITE(0XE0000000, 0x000001FFU ,0x00000017U), - // .. CHMODE = 0x0 - // .. ==> 0XE0000004[9:8] = 0x00000000U - // .. ==> MASK : 0x00000300U VAL : 0x00000000U - // .. NBSTOP = 0x0 - // .. ==> 0XE0000004[7:6] = 0x00000000U - // .. ==> MASK : 0x000000C0U VAL : 0x00000000U - // .. PAR = 0x4 - // .. ==> 0XE0000004[5:3] = 0x00000004U - // .. ==> MASK : 0x00000038U VAL : 0x00000020U - // .. CHRL = 0x0 - // .. ==> 0XE0000004[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. CLKS = 0x0 - // .. ==> 0XE0000004[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XE0000004, 0x000003FFU ,0x00000020U), - // .. FINISH: UART REGISTERS - // .. START: QSPI REGISTERS - // .. Holdb_dr = 1 - // .. ==> 0XE000D000[19:19] = 0x00000001U - // .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. - EMIT_MASKWRITE(0XE000D000, 0x00080000U ,0x00080000U), - // .. FINISH: QSPI REGISTERS - // .. START: PL POWER ON RESET REGISTERS - // .. PCFG_POR_CNT_4K = 0 - // .. ==> 0XF8007000[29:29] = 0x00000000U - // .. ==> MASK : 0x20000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8007000, 0x20000000U ,0x00000000U), - // .. FINISH: PL POWER ON RESET REGISTERS - // .. START: SMC TIMING CALCULATION REGISTER UPDATE - // .. .. START: NAND SET CYCLE - // .. .. FINISH: NAND SET CYCLE - // .. .. START: OPMODE - // .. .. FINISH: OPMODE - // .. .. START: DIRECT COMMAND - // .. .. FINISH: DIRECT COMMAND - // .. .. START: SRAM/NOR CS0 SET CYCLE - // .. .. FINISH: SRAM/NOR CS0 SET CYCLE - // .. .. START: DIRECT COMMAND - // .. .. FINISH: DIRECT COMMAND - // .. .. START: NOR CS0 BASE ADDRESS - // .. .. FINISH: NOR CS0 BASE ADDRESS - // .. .. START: SRAM/NOR CS1 SET CYCLE - // .. .. FINISH: SRAM/NOR CS1 SET CYCLE - // .. .. START: DIRECT COMMAND - // .. .. FINISH: DIRECT COMMAND - // .. .. START: NOR CS1 BASE ADDRESS - // .. .. FINISH: NOR CS1 BASE ADDRESS - // .. .. START: USB RESET - // .. .. .. START: USB0 RESET - // .. .. .. .. START: DIR MODE BANK 0 - // .. .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. .. START: DIR MODE BANK 1 - // .. .. .. .. DIRECTION_1 = 0x4000 - // .. .. .. .. ==> 0XE000A244[21:0] = 0x00004000U - // .. .. .. .. ==> MASK : 0x003FFFFFU VAL : 0x00004000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A244, 0x003FFFFFU ,0x00004000U), - // .. .. .. .. FINISH: DIR MODE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. MASK_1_LSW = 0xbfff - // .. .. .. .. ==> 0XE000A008[31:16] = 0x0000BFFFU - // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xBFFF0000U - // .. .. .. .. DATA_1_LSW = 0x4000 - // .. .. .. .. ==> 0XE000A008[15:0] = 0x00004000U - // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00004000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A008, 0xFFFFFFFFU ,0xBFFF4000U), - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. .. .. START: OUTPUT ENABLE BANK 1 - // .. .. .. .. OP_ENABLE_1 = 0x4000 - // .. .. .. .. ==> 0XE000A248[21:0] = 0x00004000U - // .. .. .. .. ==> MASK : 0x003FFFFFU VAL : 0x00004000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A248, 0x003FFFFFU ,0x00004000U), - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. MASK_1_LSW = 0xbfff - // .. .. .. .. ==> 0XE000A008[31:16] = 0x0000BFFFU - // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xBFFF0000U - // .. .. .. .. DATA_1_LSW = 0x0 - // .. .. .. .. ==> 0XE000A008[15:0] = 0x00000000U - // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A008, 0xFFFFFFFFU ,0xBFFF0000U), - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. MASK_1_LSW = 0xbfff - // .. .. .. .. ==> 0XE000A008[31:16] = 0x0000BFFFU - // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xBFFF0000U - // .. .. .. .. DATA_1_LSW = 0x4000 - // .. .. .. .. ==> 0XE000A008[15:0] = 0x00004000U - // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00004000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A008, 0xFFFFFFFFU ,0xBFFF4000U), - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: USB0 RESET - // .. .. .. START: USB1 RESET - // .. .. .. .. START: DIR MODE BANK 0 - // .. .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. .. START: DIR MODE BANK 1 - // .. .. .. .. FINISH: DIR MODE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. .. .. START: OUTPUT ENABLE BANK 1 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: USB1 RESET - // .. .. FINISH: USB RESET - // .. .. START: ENET RESET - // .. .. .. START: ENET0 RESET - // .. .. .. .. START: DIR MODE BANK 0 - // .. .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. .. START: DIR MODE BANK 1 - // .. .. .. .. FINISH: DIR MODE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. .. .. START: OUTPUT ENABLE BANK 1 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: ENET0 RESET - // .. .. .. START: ENET1 RESET - // .. .. .. .. START: DIR MODE BANK 0 - // .. .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. .. START: DIR MODE BANK 1 - // .. .. .. .. FINISH: DIR MODE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. .. .. START: OUTPUT ENABLE BANK 1 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: ENET1 RESET - // .. .. FINISH: ENET RESET - // .. .. START: I2C RESET - // .. .. .. START: I2C0 RESET - // .. .. .. .. START: DIR MODE GPIO BANK0 - // .. .. .. .. FINISH: DIR MODE GPIO BANK0 - // .. .. .. .. START: DIR MODE GPIO BANK1 - // .. .. .. .. FINISH: DIR MODE GPIO BANK1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE - // .. .. .. .. FINISH: OUTPUT ENABLE - // .. .. .. .. START: OUTPUT ENABLE - // .. .. .. .. FINISH: OUTPUT ENABLE - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: I2C0 RESET - // .. .. .. START: I2C1 RESET - // .. .. .. .. START: DIR MODE GPIO BANK0 - // .. .. .. .. FINISH: DIR MODE GPIO BANK0 - // .. .. .. .. START: DIR MODE GPIO BANK1 - // .. .. .. .. FINISH: DIR MODE GPIO BANK1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE - // .. .. .. .. FINISH: OUTPUT ENABLE - // .. .. .. .. START: OUTPUT ENABLE - // .. .. .. .. FINISH: OUTPUT ENABLE - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: I2C1 RESET - // .. .. FINISH: I2C RESET - // .. .. START: NOR CHIP SELECT - // .. .. .. START: DIR MODE BANK 0 - // .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. FINISH: NOR CHIP SELECT - // .. FINISH: SMC TIMING CALCULATION REGISTER UPDATE - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_post_config_3_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: ENABLING LEVEL SHIFTER - // .. USER_LVL_INP_EN_0 = 1 - // .. ==> 0XF8000900[3:3] = 0x00000001U - // .. ==> MASK : 0x00000008U VAL : 0x00000008U - // .. USER_LVL_OUT_EN_0 = 1 - // .. ==> 0XF8000900[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. USER_LVL_INP_EN_1 = 1 - // .. ==> 0XF8000900[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. USER_LVL_OUT_EN_1 = 1 - // .. ==> 0XF8000900[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. - EMIT_MASKWRITE(0XF8000900, 0x0000000FU ,0x0000000FU), - // .. FINISH: ENABLING LEVEL SHIFTER - // .. START: FPGA RESETS TO 0 - // .. reserved_3 = 0 - // .. ==> 0XF8000240[31:25] = 0x00000000U - // .. ==> MASK : 0xFE000000U VAL : 0x00000000U - // .. reserved_FPGA_ACP_RST = 0 - // .. ==> 0XF8000240[24:24] = 0x00000000U - // .. ==> MASK : 0x01000000U VAL : 0x00000000U - // .. reserved_FPGA_AXDS3_RST = 0 - // .. ==> 0XF8000240[23:23] = 0x00000000U - // .. ==> MASK : 0x00800000U VAL : 0x00000000U - // .. reserved_FPGA_AXDS2_RST = 0 - // .. ==> 0XF8000240[22:22] = 0x00000000U - // .. ==> MASK : 0x00400000U VAL : 0x00000000U - // .. reserved_FPGA_AXDS1_RST = 0 - // .. ==> 0XF8000240[21:21] = 0x00000000U - // .. ==> MASK : 0x00200000U VAL : 0x00000000U - // .. reserved_FPGA_AXDS0_RST = 0 - // .. ==> 0XF8000240[20:20] = 0x00000000U - // .. ==> MASK : 0x00100000U VAL : 0x00000000U - // .. reserved_2 = 0 - // .. ==> 0XF8000240[19:18] = 0x00000000U - // .. ==> MASK : 0x000C0000U VAL : 0x00000000U - // .. reserved_FSSW1_FPGA_RST = 0 - // .. ==> 0XF8000240[17:17] = 0x00000000U - // .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. reserved_FSSW0_FPGA_RST = 0 - // .. ==> 0XF8000240[16:16] = 0x00000000U - // .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. reserved_1 = 0 - // .. ==> 0XF8000240[15:14] = 0x00000000U - // .. ==> MASK : 0x0000C000U VAL : 0x00000000U - // .. reserved_FPGA_FMSW1_RST = 0 - // .. ==> 0XF8000240[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. reserved_FPGA_FMSW0_RST = 0 - // .. ==> 0XF8000240[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. reserved_FPGA_DMA3_RST = 0 - // .. ==> 0XF8000240[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. reserved_FPGA_DMA2_RST = 0 - // .. ==> 0XF8000240[10:10] = 0x00000000U - // .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. reserved_FPGA_DMA1_RST = 0 - // .. ==> 0XF8000240[9:9] = 0x00000000U - // .. ==> MASK : 0x00000200U VAL : 0x00000000U - // .. reserved_FPGA_DMA0_RST = 0 - // .. ==> 0XF8000240[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. reserved = 0 - // .. ==> 0XF8000240[7:4] = 0x00000000U - // .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. FPGA3_OUT_RST = 0 - // .. ==> 0XF8000240[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. FPGA2_OUT_RST = 0 - // .. ==> 0XF8000240[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. FPGA1_OUT_RST = 0 - // .. ==> 0XF8000240[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. FPGA0_OUT_RST = 0 - // .. ==> 0XF8000240[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000240, 0xFFFFFFFFU ,0x00000000U), - // .. FINISH: FPGA RESETS TO 0 - // .. START: AFI REGISTERS - // .. .. START: AFI0 REGISTERS - // .. .. FINISH: AFI0 REGISTERS - // .. .. START: AFI1 REGISTERS - // .. .. FINISH: AFI1 REGISTERS - // .. .. START: AFI2 REGISTERS - // .. .. FINISH: AFI2 REGISTERS - // .. .. START: AFI3 REGISTERS - // .. .. FINISH: AFI3 REGISTERS - // .. .. START: AFI2 SECURE REGISTER - // .. .. FINISH: AFI2 SECURE REGISTER - // .. FINISH: AFI REGISTERS - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_debug_3_0[] = { - // START: top - // .. START: CROSS TRIGGER CONFIGURATIONS - // .. .. START: UNLOCKING CTI REGISTERS - // .. .. KEY = 0XC5ACCE55 - // .. .. ==> 0XF8898FB0[31:0] = 0xC5ACCE55U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U - // .. .. - EMIT_WRITE(0XF8898FB0, 0xC5ACCE55U), - // .. .. KEY = 0XC5ACCE55 - // .. .. ==> 0XF8899FB0[31:0] = 0xC5ACCE55U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U - // .. .. - EMIT_WRITE(0XF8899FB0, 0xC5ACCE55U), - // .. .. KEY = 0XC5ACCE55 - // .. .. ==> 0XF8809FB0[31:0] = 0xC5ACCE55U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U - // .. .. - EMIT_WRITE(0XF8809FB0, 0xC5ACCE55U), - // .. .. FINISH: UNLOCKING CTI REGISTERS - // .. .. START: ENABLING CTI MODULES AND CHANNELS - // .. .. FINISH: ENABLING CTI MODULES AND CHANNELS - // .. .. START: MAPPING CPU0, CPU1 AND FTM EVENTS TO CTM CHANNELS - // .. .. FINISH: MAPPING CPU0, CPU1 AND FTM EVENTS TO CTM CHANNELS - // .. FINISH: CROSS TRIGGER CONFIGURATIONS - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_pll_init_data_2_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: PLL SLCR REGISTERS - // .. .. START: ARM PLL INIT - // .. .. PLL_RES = 0xc - // .. .. ==> 0XF8000110[7:4] = 0x0000000CU - // .. .. ==> MASK : 0x000000F0U VAL : 0x000000C0U - // .. .. PLL_CP = 0x2 - // .. .. ==> 0XF8000110[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. LOCK_CNT = 0x177 - // .. .. ==> 0XF8000110[21:12] = 0x00000177U - // .. .. ==> MASK : 0x003FF000U VAL : 0x00177000U - // .. .. - EMIT_MASKWRITE(0XF8000110, 0x003FFFF0U ,0x001772C0U), - // .. .. .. START: UPDATE FB_DIV - // .. .. .. PLL_FDIV = 0x1a - // .. .. .. ==> 0XF8000100[18:12] = 0x0000001AU - // .. .. .. ==> MASK : 0x0007F000U VAL : 0x0001A000U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x0007F000U ,0x0001A000U), - // .. .. .. FINISH: UPDATE FB_DIV - // .. .. .. START: BY PASS PLL - // .. .. .. PLL_BYPASS_FORCE = 1 - // .. .. .. ==> 0XF8000100[4:4] = 0x00000001U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x00000010U ,0x00000010U), - // .. .. .. FINISH: BY PASS PLL - // .. .. .. START: ASSERT RESET - // .. .. .. PLL_RESET = 1 - // .. .. .. ==> 0XF8000100[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x00000001U ,0x00000001U), - // .. .. .. FINISH: ASSERT RESET - // .. .. .. START: DEASSERT RESET - // .. .. .. PLL_RESET = 0 - // .. .. .. ==> 0XF8000100[0:0] = 0x00000000U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x00000001U ,0x00000000U), - // .. .. .. FINISH: DEASSERT RESET - // .. .. .. START: CHECK PLL STATUS - // .. .. .. ARM_PLL_LOCK = 1 - // .. .. .. ==> 0XF800010C[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. - EMIT_MASKPOLL(0XF800010C, 0x00000001U), - // .. .. .. FINISH: CHECK PLL STATUS - // .. .. .. START: REMOVE PLL BY PASS - // .. .. .. PLL_BYPASS_FORCE = 0 - // .. .. .. ==> 0XF8000100[4:4] = 0x00000000U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x00000010U ,0x00000000U), - // .. .. .. FINISH: REMOVE PLL BY PASS - // .. .. .. SRCSEL = 0x0 - // .. .. .. ==> 0XF8000120[5:4] = 0x00000000U - // .. .. .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. .. .. DIVISOR = 0x2 - // .. .. .. ==> 0XF8000120[13:8] = 0x00000002U - // .. .. .. ==> MASK : 0x00003F00U VAL : 0x00000200U - // .. .. .. CPU_6OR4XCLKACT = 0x1 - // .. .. .. ==> 0XF8000120[24:24] = 0x00000001U - // .. .. .. ==> MASK : 0x01000000U VAL : 0x01000000U - // .. .. .. CPU_3OR2XCLKACT = 0x1 - // .. .. .. ==> 0XF8000120[25:25] = 0x00000001U - // .. .. .. ==> MASK : 0x02000000U VAL : 0x02000000U - // .. .. .. CPU_2XCLKACT = 0x1 - // .. .. .. ==> 0XF8000120[26:26] = 0x00000001U - // .. .. .. ==> MASK : 0x04000000U VAL : 0x04000000U - // .. .. .. CPU_1XCLKACT = 0x1 - // .. .. .. ==> 0XF8000120[27:27] = 0x00000001U - // .. .. .. ==> MASK : 0x08000000U VAL : 0x08000000U - // .. .. .. CPU_PERI_CLKACT = 0x1 - // .. .. .. ==> 0XF8000120[28:28] = 0x00000001U - // .. .. .. ==> MASK : 0x10000000U VAL : 0x10000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000120, 0x1F003F30U ,0x1F000200U), - // .. .. FINISH: ARM PLL INIT - // .. .. START: DDR PLL INIT - // .. .. PLL_RES = 0xc - // .. .. ==> 0XF8000114[7:4] = 0x0000000CU - // .. .. ==> MASK : 0x000000F0U VAL : 0x000000C0U - // .. .. PLL_CP = 0x2 - // .. .. ==> 0XF8000114[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. LOCK_CNT = 0x1db - // .. .. ==> 0XF8000114[21:12] = 0x000001DBU - // .. .. ==> MASK : 0x003FF000U VAL : 0x001DB000U - // .. .. - EMIT_MASKWRITE(0XF8000114, 0x003FFFF0U ,0x001DB2C0U), - // .. .. .. START: UPDATE FB_DIV - // .. .. .. PLL_FDIV = 0x15 - // .. .. .. ==> 0XF8000104[18:12] = 0x00000015U - // .. .. .. ==> MASK : 0x0007F000U VAL : 0x00015000U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x0007F000U ,0x00015000U), - // .. .. .. FINISH: UPDATE FB_DIV - // .. .. .. START: BY PASS PLL - // .. .. .. PLL_BYPASS_FORCE = 1 - // .. .. .. ==> 0XF8000104[4:4] = 0x00000001U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x00000010U ,0x00000010U), - // .. .. .. FINISH: BY PASS PLL - // .. .. .. START: ASSERT RESET - // .. .. .. PLL_RESET = 1 - // .. .. .. ==> 0XF8000104[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x00000001U ,0x00000001U), - // .. .. .. FINISH: ASSERT RESET - // .. .. .. START: DEASSERT RESET - // .. .. .. PLL_RESET = 0 - // .. .. .. ==> 0XF8000104[0:0] = 0x00000000U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x00000001U ,0x00000000U), - // .. .. .. FINISH: DEASSERT RESET - // .. .. .. START: CHECK PLL STATUS - // .. .. .. DDR_PLL_LOCK = 1 - // .. .. .. ==> 0XF800010C[1:1] = 0x00000001U - // .. .. .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. .. .. - EMIT_MASKPOLL(0XF800010C, 0x00000002U), - // .. .. .. FINISH: CHECK PLL STATUS - // .. .. .. START: REMOVE PLL BY PASS - // .. .. .. PLL_BYPASS_FORCE = 0 - // .. .. .. ==> 0XF8000104[4:4] = 0x00000000U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x00000010U ,0x00000000U), - // .. .. .. FINISH: REMOVE PLL BY PASS - // .. .. .. DDR_3XCLKACT = 0x1 - // .. .. .. ==> 0XF8000124[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. DDR_2XCLKACT = 0x1 - // .. .. .. ==> 0XF8000124[1:1] = 0x00000001U - // .. .. .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. .. .. DDR_3XCLK_DIVISOR = 0x2 - // .. .. .. ==> 0XF8000124[25:20] = 0x00000002U - // .. .. .. ==> MASK : 0x03F00000U VAL : 0x00200000U - // .. .. .. DDR_2XCLK_DIVISOR = 0x3 - // .. .. .. ==> 0XF8000124[31:26] = 0x00000003U - // .. .. .. ==> MASK : 0xFC000000U VAL : 0x0C000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000124, 0xFFF00003U ,0x0C200003U), - // .. .. FINISH: DDR PLL INIT - // .. .. START: IO PLL INIT - // .. .. PLL_RES = 0xc - // .. .. ==> 0XF8000118[7:4] = 0x0000000CU - // .. .. ==> MASK : 0x000000F0U VAL : 0x000000C0U - // .. .. PLL_CP = 0x2 - // .. .. ==> 0XF8000118[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. LOCK_CNT = 0x1f4 - // .. .. ==> 0XF8000118[21:12] = 0x000001F4U - // .. .. ==> MASK : 0x003FF000U VAL : 0x001F4000U - // .. .. - EMIT_MASKWRITE(0XF8000118, 0x003FFFF0U ,0x001F42C0U), - // .. .. .. START: UPDATE FB_DIV - // .. .. .. PLL_FDIV = 0x14 - // .. .. .. ==> 0XF8000108[18:12] = 0x00000014U - // .. .. .. ==> MASK : 0x0007F000U VAL : 0x00014000U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x0007F000U ,0x00014000U), - // .. .. .. FINISH: UPDATE FB_DIV - // .. .. .. START: BY PASS PLL - // .. .. .. PLL_BYPASS_FORCE = 1 - // .. .. .. ==> 0XF8000108[4:4] = 0x00000001U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x00000010U ,0x00000010U), - // .. .. .. FINISH: BY PASS PLL - // .. .. .. START: ASSERT RESET - // .. .. .. PLL_RESET = 1 - // .. .. .. ==> 0XF8000108[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x00000001U ,0x00000001U), - // .. .. .. FINISH: ASSERT RESET - // .. .. .. START: DEASSERT RESET - // .. .. .. PLL_RESET = 0 - // .. .. .. ==> 0XF8000108[0:0] = 0x00000000U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x00000001U ,0x00000000U), - // .. .. .. FINISH: DEASSERT RESET - // .. .. .. START: CHECK PLL STATUS - // .. .. .. IO_PLL_LOCK = 1 - // .. .. .. ==> 0XF800010C[2:2] = 0x00000001U - // .. .. .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. .. .. - EMIT_MASKPOLL(0XF800010C, 0x00000004U), - // .. .. .. FINISH: CHECK PLL STATUS - // .. .. .. START: REMOVE PLL BY PASS - // .. .. .. PLL_BYPASS_FORCE = 0 - // .. .. .. ==> 0XF8000108[4:4] = 0x00000000U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x00000010U ,0x00000000U), - // .. .. .. FINISH: REMOVE PLL BY PASS - // .. .. FINISH: IO PLL INIT - // .. FINISH: PLL SLCR REGISTERS - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_clock_init_data_2_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: CLOCK CONTROL SLCR REGISTERS - // .. CLKACT = 0x1 - // .. ==> 0XF8000128[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. DIVISOR0 = 0x34 - // .. ==> 0XF8000128[13:8] = 0x00000034U - // .. ==> MASK : 0x00003F00U VAL : 0x00003400U - // .. DIVISOR1 = 0x2 - // .. ==> 0XF8000128[25:20] = 0x00000002U - // .. ==> MASK : 0x03F00000U VAL : 0x00200000U - // .. - EMIT_MASKWRITE(0XF8000128, 0x03F03F01U ,0x00203401U), - // .. CLKACT = 0x1 - // .. ==> 0XF8000138[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. SRCSEL = 0x0 - // .. ==> 0XF8000138[4:4] = 0x00000000U - // .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000138, 0x00000011U ,0x00000001U), - // .. CLKACT = 0x1 - // .. ==> 0XF8000140[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. SRCSEL = 0x0 - // .. ==> 0XF8000140[6:4] = 0x00000000U - // .. ==> MASK : 0x00000070U VAL : 0x00000000U - // .. DIVISOR = 0x8 - // .. ==> 0XF8000140[13:8] = 0x00000008U - // .. ==> MASK : 0x00003F00U VAL : 0x00000800U - // .. DIVISOR1 = 0x1 - // .. ==> 0XF8000140[25:20] = 0x00000001U - // .. ==> MASK : 0x03F00000U VAL : 0x00100000U - // .. - EMIT_MASKWRITE(0XF8000140, 0x03F03F71U ,0x00100801U), - // .. CLKACT = 0x1 - // .. ==> 0XF800014C[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. SRCSEL = 0x0 - // .. ==> 0XF800014C[5:4] = 0x00000000U - // .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. DIVISOR = 0x5 - // .. ==> 0XF800014C[13:8] = 0x00000005U - // .. ==> MASK : 0x00003F00U VAL : 0x00000500U - // .. - EMIT_MASKWRITE(0XF800014C, 0x00003F31U ,0x00000501U), - // .. CLKACT0 = 0x1 - // .. ==> 0XF8000150[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. CLKACT1 = 0x0 - // .. ==> 0XF8000150[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. SRCSEL = 0x0 - // .. ==> 0XF8000150[5:4] = 0x00000000U - // .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. DIVISOR = 0x14 - // .. ==> 0XF8000150[13:8] = 0x00000014U - // .. ==> MASK : 0x00003F00U VAL : 0x00001400U - // .. - EMIT_MASKWRITE(0XF8000150, 0x00003F33U ,0x00001401U), - // .. CLKACT0 = 0x1 - // .. ==> 0XF8000154[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. CLKACT1 = 0x1 - // .. ==> 0XF8000154[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. SRCSEL = 0x0 - // .. ==> 0XF8000154[5:4] = 0x00000000U - // .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. DIVISOR = 0xa - // .. ==> 0XF8000154[13:8] = 0x0000000AU - // .. ==> MASK : 0x00003F00U VAL : 0x00000A00U - // .. - EMIT_MASKWRITE(0XF8000154, 0x00003F33U ,0x00000A03U), - // .. .. START: TRACE CLOCK - // .. .. FINISH: TRACE CLOCK - // .. .. CLKACT = 0x1 - // .. .. ==> 0XF8000168[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. SRCSEL = 0x0 - // .. .. ==> 0XF8000168[5:4] = 0x00000000U - // .. .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. .. DIVISOR = 0x5 - // .. .. ==> 0XF8000168[13:8] = 0x00000005U - // .. .. ==> MASK : 0x00003F00U VAL : 0x00000500U - // .. .. - EMIT_MASKWRITE(0XF8000168, 0x00003F31U ,0x00000501U), - // .. .. SRCSEL = 0x0 - // .. .. ==> 0XF8000170[5:4] = 0x00000000U - // .. .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. .. DIVISOR0 = 0x5 - // .. .. ==> 0XF8000170[13:8] = 0x00000005U - // .. .. ==> MASK : 0x00003F00U VAL : 0x00000500U - // .. .. DIVISOR1 = 0x2 - // .. .. ==> 0XF8000170[25:20] = 0x00000002U - // .. .. ==> MASK : 0x03F00000U VAL : 0x00200000U - // .. .. - EMIT_MASKWRITE(0XF8000170, 0x03F03F30U ,0x00200500U), - // .. .. CLK_621_TRUE = 0x1 - // .. .. ==> 0XF80001C4[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. - EMIT_MASKWRITE(0XF80001C4, 0x00000001U ,0x00000001U), - // .. .. DMA_CPU_2XCLKACT = 0x1 - // .. .. ==> 0XF800012C[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. USB0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[2:2] = 0x00000001U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. .. USB1_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[3:3] = 0x00000001U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000008U - // .. .. GEM0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[6:6] = 0x00000001U - // .. .. ==> MASK : 0x00000040U VAL : 0x00000040U - // .. .. GEM1_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[7:7] = 0x00000000U - // .. .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. .. SDI0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[10:10] = 0x00000001U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000400U - // .. .. SDI1_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. SPI0_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[14:14] = 0x00000000U - // .. .. ==> MASK : 0x00004000U VAL : 0x00000000U - // .. .. SPI1_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[15:15] = 0x00000000U - // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U - // .. .. CAN0_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. CAN1_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. I2C0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[18:18] = 0x00000001U - // .. .. ==> MASK : 0x00040000U VAL : 0x00040000U - // .. .. I2C1_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[19:19] = 0x00000001U - // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. .. UART0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[20:20] = 0x00000001U - // .. .. ==> MASK : 0x00100000U VAL : 0x00100000U - // .. .. UART1_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[21:21] = 0x00000001U - // .. .. ==> MASK : 0x00200000U VAL : 0x00200000U - // .. .. GPIO_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[22:22] = 0x00000001U - // .. .. ==> MASK : 0x00400000U VAL : 0x00400000U - // .. .. LQSPI_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[23:23] = 0x00000001U - // .. .. ==> MASK : 0x00800000U VAL : 0x00800000U - // .. .. SMC_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[24:24] = 0x00000001U - // .. .. ==> MASK : 0x01000000U VAL : 0x01000000U - // .. .. - EMIT_MASKWRITE(0XF800012C, 0x01FFCCCDU ,0x01FC044DU), - // .. FINISH: CLOCK CONTROL SLCR REGISTERS - // .. START: THIS SHOULD BE BLANK - // .. FINISH: THIS SHOULD BE BLANK - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_ddr_init_data_2_0[] = { - // START: top - // .. START: DDR INITIALIZATION - // .. .. START: LOCK DDR - // .. .. reg_ddrc_soft_rstb = 0 - // .. .. ==> 0XF8006000[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_powerdown_en = 0x0 - // .. .. ==> 0XF8006000[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_ddrc_data_bus_width = 0x0 - // .. .. ==> 0XF8006000[3:2] = 0x00000000U - // .. .. ==> MASK : 0x0000000CU VAL : 0x00000000U - // .. .. reg_ddrc_burst8_refresh = 0x0 - // .. .. ==> 0XF8006000[6:4] = 0x00000000U - // .. .. ==> MASK : 0x00000070U VAL : 0x00000000U - // .. .. reg_ddrc_rdwr_idle_gap = 0x1 - // .. .. ==> 0XF8006000[13:7] = 0x00000001U - // .. .. ==> MASK : 0x00003F80U VAL : 0x00000080U - // .. .. reg_ddrc_dis_rd_bypass = 0x0 - // .. .. ==> 0XF8006000[14:14] = 0x00000000U - // .. .. ==> MASK : 0x00004000U VAL : 0x00000000U - // .. .. reg_ddrc_dis_act_bypass = 0x0 - // .. .. ==> 0XF8006000[15:15] = 0x00000000U - // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U - // .. .. reg_ddrc_dis_auto_refresh = 0x0 - // .. .. ==> 0XF8006000[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006000, 0x0001FFFFU ,0x00000080U), - // .. .. FINISH: LOCK DDR - // .. .. reg_ddrc_t_rfc_nom_x32 = 0x7f - // .. .. ==> 0XF8006004[11:0] = 0x0000007FU - // .. .. ==> MASK : 0x00000FFFU VAL : 0x0000007FU - // .. .. reg_ddrc_active_ranks = 0x1 - // .. .. ==> 0XF8006004[13:12] = 0x00000001U - // .. .. ==> MASK : 0x00003000U VAL : 0x00001000U - // .. .. reg_ddrc_addrmap_cs_bit0 = 0x0 - // .. .. ==> 0XF8006004[18:14] = 0x00000000U - // .. .. ==> MASK : 0x0007C000U VAL : 0x00000000U - // .. .. reg_ddrc_wr_odt_block = 0x1 - // .. .. ==> 0XF8006004[20:19] = 0x00000001U - // .. .. ==> MASK : 0x00180000U VAL : 0x00080000U - // .. .. reg_ddrc_diff_rank_rd_2cycle_gap = 0x0 - // .. .. ==> 0XF8006004[21:21] = 0x00000000U - // .. .. ==> MASK : 0x00200000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_cs_bit1 = 0x0 - // .. .. ==> 0XF8006004[26:22] = 0x00000000U - // .. .. ==> MASK : 0x07C00000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_open_bank = 0x0 - // .. .. ==> 0XF8006004[27:27] = 0x00000000U - // .. .. ==> MASK : 0x08000000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_4bank_ram = 0x0 - // .. .. ==> 0XF8006004[28:28] = 0x00000000U - // .. .. ==> MASK : 0x10000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006004, 0x1FFFFFFFU ,0x0008107FU), - // .. .. reg_ddrc_hpr_min_non_critical_x32 = 0xf - // .. .. ==> 0XF8006008[10:0] = 0x0000000FU - // .. .. ==> MASK : 0x000007FFU VAL : 0x0000000FU - // .. .. reg_ddrc_hpr_max_starve_x32 = 0xf - // .. .. ==> 0XF8006008[21:11] = 0x0000000FU - // .. .. ==> MASK : 0x003FF800U VAL : 0x00007800U - // .. .. reg_ddrc_hpr_xact_run_length = 0xf - // .. .. ==> 0XF8006008[25:22] = 0x0000000FU - // .. .. ==> MASK : 0x03C00000U VAL : 0x03C00000U - // .. .. - EMIT_MASKWRITE(0XF8006008, 0x03FFFFFFU ,0x03C0780FU), - // .. .. reg_ddrc_lpr_min_non_critical_x32 = 0x1 - // .. .. ==> 0XF800600C[10:0] = 0x00000001U - // .. .. ==> MASK : 0x000007FFU VAL : 0x00000001U - // .. .. reg_ddrc_lpr_max_starve_x32 = 0x2 - // .. .. ==> 0XF800600C[21:11] = 0x00000002U - // .. .. ==> MASK : 0x003FF800U VAL : 0x00001000U - // .. .. reg_ddrc_lpr_xact_run_length = 0x8 - // .. .. ==> 0XF800600C[25:22] = 0x00000008U - // .. .. ==> MASK : 0x03C00000U VAL : 0x02000000U - // .. .. - EMIT_MASKWRITE(0XF800600C, 0x03FFFFFFU ,0x02001001U), - // .. .. reg_ddrc_w_min_non_critical_x32 = 0x1 - // .. .. ==> 0XF8006010[10:0] = 0x00000001U - // .. .. ==> MASK : 0x000007FFU VAL : 0x00000001U - // .. .. reg_ddrc_w_xact_run_length = 0x8 - // .. .. ==> 0XF8006010[14:11] = 0x00000008U - // .. .. ==> MASK : 0x00007800U VAL : 0x00004000U - // .. .. reg_ddrc_w_max_starve_x32 = 0x2 - // .. .. ==> 0XF8006010[25:15] = 0x00000002U - // .. .. ==> MASK : 0x03FF8000U VAL : 0x00010000U - // .. .. - EMIT_MASKWRITE(0XF8006010, 0x03FFFFFFU ,0x00014001U), - // .. .. reg_ddrc_t_rc = 0x1a - // .. .. ==> 0XF8006014[5:0] = 0x0000001AU - // .. .. ==> MASK : 0x0000003FU VAL : 0x0000001AU - // .. .. reg_ddrc_t_rfc_min = 0x54 - // .. .. ==> 0XF8006014[13:6] = 0x00000054U - // .. .. ==> MASK : 0x00003FC0U VAL : 0x00001500U - // .. .. reg_ddrc_post_selfref_gap_x32 = 0x10 - // .. .. ==> 0XF8006014[20:14] = 0x00000010U - // .. .. ==> MASK : 0x001FC000U VAL : 0x00040000U - // .. .. - EMIT_MASKWRITE(0XF8006014, 0x001FFFFFU ,0x0004151AU), - // .. .. reg_ddrc_wr2pre = 0x12 - // .. .. ==> 0XF8006018[4:0] = 0x00000012U - // .. .. ==> MASK : 0x0000001FU VAL : 0x00000012U - // .. .. reg_ddrc_powerdown_to_x32 = 0x6 - // .. .. ==> 0XF8006018[9:5] = 0x00000006U - // .. .. ==> MASK : 0x000003E0U VAL : 0x000000C0U - // .. .. reg_ddrc_t_faw = 0x15 - // .. .. ==> 0XF8006018[15:10] = 0x00000015U - // .. .. ==> MASK : 0x0000FC00U VAL : 0x00005400U - // .. .. reg_ddrc_t_ras_max = 0x23 - // .. .. ==> 0XF8006018[21:16] = 0x00000023U - // .. .. ==> MASK : 0x003F0000U VAL : 0x00230000U - // .. .. reg_ddrc_t_ras_min = 0x13 - // .. .. ==> 0XF8006018[26:22] = 0x00000013U - // .. .. ==> MASK : 0x07C00000U VAL : 0x04C00000U - // .. .. reg_ddrc_t_cke = 0x4 - // .. .. ==> 0XF8006018[31:28] = 0x00000004U - // .. .. ==> MASK : 0xF0000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF8006018, 0xF7FFFFFFU ,0x44E354D2U), - // .. .. reg_ddrc_write_latency = 0x5 - // .. .. ==> 0XF800601C[4:0] = 0x00000005U - // .. .. ==> MASK : 0x0000001FU VAL : 0x00000005U - // .. .. reg_ddrc_rd2wr = 0x7 - // .. .. ==> 0XF800601C[9:5] = 0x00000007U - // .. .. ==> MASK : 0x000003E0U VAL : 0x000000E0U - // .. .. reg_ddrc_wr2rd = 0xe - // .. .. ==> 0XF800601C[14:10] = 0x0000000EU - // .. .. ==> MASK : 0x00007C00U VAL : 0x00003800U - // .. .. reg_ddrc_t_xp = 0x4 - // .. .. ==> 0XF800601C[19:15] = 0x00000004U - // .. .. ==> MASK : 0x000F8000U VAL : 0x00020000U - // .. .. reg_ddrc_pad_pd = 0x0 - // .. .. ==> 0XF800601C[22:20] = 0x00000000U - // .. .. ==> MASK : 0x00700000U VAL : 0x00000000U - // .. .. reg_ddrc_rd2pre = 0x4 - // .. .. ==> 0XF800601C[27:23] = 0x00000004U - // .. .. ==> MASK : 0x0F800000U VAL : 0x02000000U - // .. .. reg_ddrc_t_rcd = 0x7 - // .. .. ==> 0XF800601C[31:28] = 0x00000007U - // .. .. ==> MASK : 0xF0000000U VAL : 0x70000000U - // .. .. - EMIT_MASKWRITE(0XF800601C, 0xFFFFFFFFU ,0x720238E5U), - // .. .. reg_ddrc_t_ccd = 0x4 - // .. .. ==> 0XF8006020[4:2] = 0x00000004U - // .. .. ==> MASK : 0x0000001CU VAL : 0x00000010U - // .. .. reg_ddrc_t_rrd = 0x6 - // .. .. ==> 0XF8006020[7:5] = 0x00000006U - // .. .. ==> MASK : 0x000000E0U VAL : 0x000000C0U - // .. .. reg_ddrc_refresh_margin = 0x2 - // .. .. ==> 0XF8006020[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. reg_ddrc_t_rp = 0x7 - // .. .. ==> 0XF8006020[15:12] = 0x00000007U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00007000U - // .. .. reg_ddrc_refresh_to_x32 = 0x8 - // .. .. ==> 0XF8006020[20:16] = 0x00000008U - // .. .. ==> MASK : 0x001F0000U VAL : 0x00080000U - // .. .. reg_ddrc_sdram = 0x1 - // .. .. ==> 0XF8006020[21:21] = 0x00000001U - // .. .. ==> MASK : 0x00200000U VAL : 0x00200000U - // .. .. reg_ddrc_mobile = 0x0 - // .. .. ==> 0XF8006020[22:22] = 0x00000000U - // .. .. ==> MASK : 0x00400000U VAL : 0x00000000U - // .. .. reg_ddrc_clock_stop_en = 0x0 - // .. .. ==> 0XF8006020[23:23] = 0x00000000U - // .. .. ==> MASK : 0x00800000U VAL : 0x00000000U - // .. .. reg_ddrc_read_latency = 0x7 - // .. .. ==> 0XF8006020[28:24] = 0x00000007U - // .. .. ==> MASK : 0x1F000000U VAL : 0x07000000U - // .. .. reg_phy_mode_ddr1_ddr2 = 0x1 - // .. .. ==> 0XF8006020[29:29] = 0x00000001U - // .. .. ==> MASK : 0x20000000U VAL : 0x20000000U - // .. .. reg_ddrc_dis_pad_pd = 0x0 - // .. .. ==> 0XF8006020[30:30] = 0x00000000U - // .. .. ==> MASK : 0x40000000U VAL : 0x00000000U - // .. .. reg_ddrc_loopback = 0x0 - // .. .. ==> 0XF8006020[31:31] = 0x00000000U - // .. .. ==> MASK : 0x80000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006020, 0xFFFFFFFCU ,0x272872D0U), - // .. .. reg_ddrc_en_2t_timing_mode = 0x0 - // .. .. ==> 0XF8006024[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_prefer_write = 0x0 - // .. .. ==> 0XF8006024[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_ddrc_max_rank_rd = 0xf - // .. .. ==> 0XF8006024[5:2] = 0x0000000FU - // .. .. ==> MASK : 0x0000003CU VAL : 0x0000003CU - // .. .. reg_ddrc_mr_wr = 0x0 - // .. .. ==> 0XF8006024[6:6] = 0x00000000U - // .. .. ==> MASK : 0x00000040U VAL : 0x00000000U - // .. .. reg_ddrc_mr_addr = 0x0 - // .. .. ==> 0XF8006024[8:7] = 0x00000000U - // .. .. ==> MASK : 0x00000180U VAL : 0x00000000U - // .. .. reg_ddrc_mr_data = 0x0 - // .. .. ==> 0XF8006024[24:9] = 0x00000000U - // .. .. ==> MASK : 0x01FFFE00U VAL : 0x00000000U - // .. .. ddrc_reg_mr_wr_busy = 0x0 - // .. .. ==> 0XF8006024[25:25] = 0x00000000U - // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U - // .. .. reg_ddrc_mr_type = 0x0 - // .. .. ==> 0XF8006024[26:26] = 0x00000000U - // .. .. ==> MASK : 0x04000000U VAL : 0x00000000U - // .. .. reg_ddrc_mr_rdata_valid = 0x0 - // .. .. ==> 0XF8006024[27:27] = 0x00000000U - // .. .. ==> MASK : 0x08000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006024, 0x0FFFFFFFU ,0x0000003CU), - // .. .. reg_ddrc_final_wait_x32 = 0x7 - // .. .. ==> 0XF8006028[6:0] = 0x00000007U - // .. .. ==> MASK : 0x0000007FU VAL : 0x00000007U - // .. .. reg_ddrc_pre_ocd_x32 = 0x0 - // .. .. ==> 0XF8006028[10:7] = 0x00000000U - // .. .. ==> MASK : 0x00000780U VAL : 0x00000000U - // .. .. reg_ddrc_t_mrd = 0x4 - // .. .. ==> 0XF8006028[13:11] = 0x00000004U - // .. .. ==> MASK : 0x00003800U VAL : 0x00002000U - // .. .. - EMIT_MASKWRITE(0XF8006028, 0x00003FFFU ,0x00002007U), - // .. .. reg_ddrc_emr2 = 0x8 - // .. .. ==> 0XF800602C[15:0] = 0x00000008U - // .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000008U - // .. .. reg_ddrc_emr3 = 0x0 - // .. .. ==> 0XF800602C[31:16] = 0x00000000U - // .. .. ==> MASK : 0xFFFF0000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800602C, 0xFFFFFFFFU ,0x00000008U), - // .. .. reg_ddrc_mr = 0x930 - // .. .. ==> 0XF8006030[15:0] = 0x00000930U - // .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000930U - // .. .. reg_ddrc_emr = 0x4 - // .. .. ==> 0XF8006030[31:16] = 0x00000004U - // .. .. ==> MASK : 0xFFFF0000U VAL : 0x00040000U - // .. .. - EMIT_MASKWRITE(0XF8006030, 0xFFFFFFFFU ,0x00040930U), - // .. .. reg_ddrc_burst_rdwr = 0x4 - // .. .. ==> 0XF8006034[3:0] = 0x00000004U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000004U - // .. .. reg_ddrc_pre_cke_x1024 = 0x167 - // .. .. ==> 0XF8006034[13:4] = 0x00000167U - // .. .. ==> MASK : 0x00003FF0U VAL : 0x00001670U - // .. .. reg_ddrc_post_cke_x1024 = 0x1 - // .. .. ==> 0XF8006034[25:16] = 0x00000001U - // .. .. ==> MASK : 0x03FF0000U VAL : 0x00010000U - // .. .. reg_ddrc_burstchop = 0x0 - // .. .. ==> 0XF8006034[28:28] = 0x00000000U - // .. .. ==> MASK : 0x10000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006034, 0x13FF3FFFU ,0x00011674U), - // .. .. reg_ddrc_force_low_pri_n = 0x0 - // .. .. ==> 0XF8006038[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_dis_dq = 0x0 - // .. .. ==> 0XF8006038[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_debug_mode = 0x0 - // .. .. ==> 0XF8006038[6:6] = 0x00000000U - // .. .. ==> MASK : 0x00000040U VAL : 0x00000000U - // .. .. reg_phy_wr_level_start = 0x0 - // .. .. ==> 0XF8006038[7:7] = 0x00000000U - // .. .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. .. reg_phy_rd_level_start = 0x0 - // .. .. ==> 0XF8006038[8:8] = 0x00000000U - // .. .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. .. reg_phy_dq0_wait_t = 0x0 - // .. .. ==> 0XF8006038[12:9] = 0x00000000U - // .. .. ==> MASK : 0x00001E00U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006038, 0x00001FC3U ,0x00000000U), - // .. .. reg_ddrc_addrmap_bank_b0 = 0x7 - // .. .. ==> 0XF800603C[3:0] = 0x00000007U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000007U - // .. .. reg_ddrc_addrmap_bank_b1 = 0x7 - // .. .. ==> 0XF800603C[7:4] = 0x00000007U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000070U - // .. .. reg_ddrc_addrmap_bank_b2 = 0x7 - // .. .. ==> 0XF800603C[11:8] = 0x00000007U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000700U - // .. .. reg_ddrc_addrmap_col_b5 = 0x0 - // .. .. ==> 0XF800603C[15:12] = 0x00000000U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b6 = 0x0 - // .. .. ==> 0XF800603C[19:16] = 0x00000000U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800603C, 0x000FFFFFU ,0x00000777U), - // .. .. reg_ddrc_addrmap_col_b2 = 0x0 - // .. .. ==> 0XF8006040[3:0] = 0x00000000U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b3 = 0x0 - // .. .. ==> 0XF8006040[7:4] = 0x00000000U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b4 = 0x0 - // .. .. ==> 0XF8006040[11:8] = 0x00000000U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b7 = 0x0 - // .. .. ==> 0XF8006040[15:12] = 0x00000000U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b8 = 0x0 - // .. .. ==> 0XF8006040[19:16] = 0x00000000U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b9 = 0xf - // .. .. ==> 0XF8006040[23:20] = 0x0000000FU - // .. .. ==> MASK : 0x00F00000U VAL : 0x00F00000U - // .. .. reg_ddrc_addrmap_col_b10 = 0xf - // .. .. ==> 0XF8006040[27:24] = 0x0000000FU - // .. .. ==> MASK : 0x0F000000U VAL : 0x0F000000U - // .. .. reg_ddrc_addrmap_col_b11 = 0xf - // .. .. ==> 0XF8006040[31:28] = 0x0000000FU - // .. .. ==> MASK : 0xF0000000U VAL : 0xF0000000U - // .. .. - EMIT_MASKWRITE(0XF8006040, 0xFFFFFFFFU ,0xFFF00000U), - // .. .. reg_ddrc_addrmap_row_b0 = 0x6 - // .. .. ==> 0XF8006044[3:0] = 0x00000006U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000006U - // .. .. reg_ddrc_addrmap_row_b1 = 0x6 - // .. .. ==> 0XF8006044[7:4] = 0x00000006U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000060U - // .. .. reg_ddrc_addrmap_row_b2_11 = 0x6 - // .. .. ==> 0XF8006044[11:8] = 0x00000006U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000600U - // .. .. reg_ddrc_addrmap_row_b12 = 0x6 - // .. .. ==> 0XF8006044[15:12] = 0x00000006U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00006000U - // .. .. reg_ddrc_addrmap_row_b13 = 0x6 - // .. .. ==> 0XF8006044[19:16] = 0x00000006U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00060000U - // .. .. reg_ddrc_addrmap_row_b14 = 0xf - // .. .. ==> 0XF8006044[23:20] = 0x0000000FU - // .. .. ==> MASK : 0x00F00000U VAL : 0x00F00000U - // .. .. reg_ddrc_addrmap_row_b15 = 0xf - // .. .. ==> 0XF8006044[27:24] = 0x0000000FU - // .. .. ==> MASK : 0x0F000000U VAL : 0x0F000000U - // .. .. - EMIT_MASKWRITE(0XF8006044, 0x0FFFFFFFU ,0x0FF66666U), - // .. .. reg_ddrc_rank0_rd_odt = 0x0 - // .. .. ==> 0XF8006048[2:0] = 0x00000000U - // .. .. ==> MASK : 0x00000007U VAL : 0x00000000U - // .. .. reg_ddrc_rank0_wr_odt = 0x1 - // .. .. ==> 0XF8006048[5:3] = 0x00000001U - // .. .. ==> MASK : 0x00000038U VAL : 0x00000008U - // .. .. reg_ddrc_rank1_rd_odt = 0x1 - // .. .. ==> 0XF8006048[8:6] = 0x00000001U - // .. .. ==> MASK : 0x000001C0U VAL : 0x00000040U - // .. .. reg_ddrc_rank1_wr_odt = 0x1 - // .. .. ==> 0XF8006048[11:9] = 0x00000001U - // .. .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. .. reg_phy_rd_local_odt = 0x0 - // .. .. ==> 0XF8006048[13:12] = 0x00000000U - // .. .. ==> MASK : 0x00003000U VAL : 0x00000000U - // .. .. reg_phy_wr_local_odt = 0x3 - // .. .. ==> 0XF8006048[15:14] = 0x00000003U - // .. .. ==> MASK : 0x0000C000U VAL : 0x0000C000U - // .. .. reg_phy_idle_local_odt = 0x3 - // .. .. ==> 0XF8006048[17:16] = 0x00000003U - // .. .. ==> MASK : 0x00030000U VAL : 0x00030000U - // .. .. reg_ddrc_rank2_rd_odt = 0x0 - // .. .. ==> 0XF8006048[20:18] = 0x00000000U - // .. .. ==> MASK : 0x001C0000U VAL : 0x00000000U - // .. .. reg_ddrc_rank2_wr_odt = 0x0 - // .. .. ==> 0XF8006048[23:21] = 0x00000000U - // .. .. ==> MASK : 0x00E00000U VAL : 0x00000000U - // .. .. reg_ddrc_rank3_rd_odt = 0x0 - // .. .. ==> 0XF8006048[26:24] = 0x00000000U - // .. .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. .. reg_ddrc_rank3_wr_odt = 0x0 - // .. .. ==> 0XF8006048[29:27] = 0x00000000U - // .. .. ==> MASK : 0x38000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006048, 0x3FFFFFFFU ,0x0003C248U), - // .. .. reg_phy_rd_cmd_to_data = 0x0 - // .. .. ==> 0XF8006050[3:0] = 0x00000000U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U - // .. .. reg_phy_wr_cmd_to_data = 0x0 - // .. .. ==> 0XF8006050[7:4] = 0x00000000U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. .. reg_phy_rdc_we_to_re_delay = 0x8 - // .. .. ==> 0XF8006050[11:8] = 0x00000008U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000800U - // .. .. reg_phy_rdc_fifo_rst_disable = 0x0 - // .. .. ==> 0XF8006050[15:15] = 0x00000000U - // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U - // .. .. reg_phy_use_fixed_re = 0x1 - // .. .. ==> 0XF8006050[16:16] = 0x00000001U - // .. .. ==> MASK : 0x00010000U VAL : 0x00010000U - // .. .. reg_phy_rdc_fifo_rst_err_cnt_clr = 0x0 - // .. .. ==> 0XF8006050[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_phy_dis_phy_ctrl_rstn = 0x0 - // .. .. ==> 0XF8006050[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_phy_clk_stall_level = 0x0 - // .. .. ==> 0XF8006050[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_num_of_dq0 = 0x7 - // .. .. ==> 0XF8006050[27:24] = 0x00000007U - // .. .. ==> MASK : 0x0F000000U VAL : 0x07000000U - // .. .. reg_phy_wrlvl_num_of_dq0 = 0x7 - // .. .. ==> 0XF8006050[31:28] = 0x00000007U - // .. .. ==> MASK : 0xF0000000U VAL : 0x70000000U - // .. .. - EMIT_MASKWRITE(0XF8006050, 0xFF0F8FFFU ,0x77010800U), - // .. .. reg_ddrc_dll_calib_to_min_x1024 = 0x1 - // .. .. ==> 0XF8006058[7:0] = 0x00000001U - // .. .. ==> MASK : 0x000000FFU VAL : 0x00000001U - // .. .. reg_ddrc_dll_calib_to_max_x1024 = 0x1 - // .. .. ==> 0XF8006058[15:8] = 0x00000001U - // .. .. ==> MASK : 0x0000FF00U VAL : 0x00000100U - // .. .. reg_ddrc_dis_dll_calib = 0x0 - // .. .. ==> 0XF8006058[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006058, 0x0001FFFFU ,0x00000101U), - // .. .. reg_ddrc_rd_odt_delay = 0x3 - // .. .. ==> 0XF800605C[3:0] = 0x00000003U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000003U - // .. .. reg_ddrc_wr_odt_delay = 0x0 - // .. .. ==> 0XF800605C[7:4] = 0x00000000U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. .. reg_ddrc_rd_odt_hold = 0x0 - // .. .. ==> 0XF800605C[11:8] = 0x00000000U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000000U - // .. .. reg_ddrc_wr_odt_hold = 0x5 - // .. .. ==> 0XF800605C[15:12] = 0x00000005U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00005000U - // .. .. - EMIT_MASKWRITE(0XF800605C, 0x0000FFFFU ,0x00005003U), - // .. .. reg_ddrc_pageclose = 0x0 - // .. .. ==> 0XF8006060[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_lpr_num_entries = 0x1f - // .. .. ==> 0XF8006060[6:1] = 0x0000001FU - // .. .. ==> MASK : 0x0000007EU VAL : 0x0000003EU - // .. .. reg_ddrc_auto_pre_en = 0x0 - // .. .. ==> 0XF8006060[7:7] = 0x00000000U - // .. .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. .. reg_ddrc_refresh_update_level = 0x0 - // .. .. ==> 0XF8006060[8:8] = 0x00000000U - // .. .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. .. reg_ddrc_dis_wc = 0x0 - // .. .. ==> 0XF8006060[9:9] = 0x00000000U - // .. .. ==> MASK : 0x00000200U VAL : 0x00000000U - // .. .. reg_ddrc_dis_collision_page_opt = 0x0 - // .. .. ==> 0XF8006060[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_ddrc_selfref_en = 0x0 - // .. .. ==> 0XF8006060[12:12] = 0x00000000U - // .. .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006060, 0x000017FFU ,0x0000003EU), - // .. .. reg_ddrc_go2critical_hysteresis = 0x0 - // .. .. ==> 0XF8006064[12:5] = 0x00000000U - // .. .. ==> MASK : 0x00001FE0U VAL : 0x00000000U - // .. .. reg_arb_go2critical_en = 0x1 - // .. .. ==> 0XF8006064[17:17] = 0x00000001U - // .. .. ==> MASK : 0x00020000U VAL : 0x00020000U - // .. .. - EMIT_MASKWRITE(0XF8006064, 0x00021FE0U ,0x00020000U), - // .. .. reg_ddrc_wrlvl_ww = 0x41 - // .. .. ==> 0XF8006068[7:0] = 0x00000041U - // .. .. ==> MASK : 0x000000FFU VAL : 0x00000041U - // .. .. reg_ddrc_rdlvl_rr = 0x41 - // .. .. ==> 0XF8006068[15:8] = 0x00000041U - // .. .. ==> MASK : 0x0000FF00U VAL : 0x00004100U - // .. .. reg_ddrc_dfi_t_wlmrd = 0x28 - // .. .. ==> 0XF8006068[25:16] = 0x00000028U - // .. .. ==> MASK : 0x03FF0000U VAL : 0x00280000U - // .. .. - EMIT_MASKWRITE(0XF8006068, 0x03FFFFFFU ,0x00284141U), - // .. .. dfi_t_ctrlupd_interval_min_x1024 = 0x10 - // .. .. ==> 0XF800606C[7:0] = 0x00000010U - // .. .. ==> MASK : 0x000000FFU VAL : 0x00000010U - // .. .. dfi_t_ctrlupd_interval_max_x1024 = 0x16 - // .. .. ==> 0XF800606C[15:8] = 0x00000016U - // .. .. ==> MASK : 0x0000FF00U VAL : 0x00001600U - // .. .. - EMIT_MASKWRITE(0XF800606C, 0x0000FFFFU ,0x00001610U), - // .. .. reg_ddrc_dfi_t_ctrl_delay = 0x1 - // .. .. ==> 0XF8006078[3:0] = 0x00000001U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000001U - // .. .. reg_ddrc_dfi_t_dram_clk_disable = 0x1 - // .. .. ==> 0XF8006078[7:4] = 0x00000001U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000010U - // .. .. reg_ddrc_dfi_t_dram_clk_enable = 0x1 - // .. .. ==> 0XF8006078[11:8] = 0x00000001U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000100U - // .. .. reg_ddrc_t_cksre = 0x6 - // .. .. ==> 0XF8006078[15:12] = 0x00000006U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00006000U - // .. .. reg_ddrc_t_cksrx = 0x6 - // .. .. ==> 0XF8006078[19:16] = 0x00000006U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00060000U - // .. .. reg_ddrc_t_ckesr = 0x4 - // .. .. ==> 0XF8006078[25:20] = 0x00000004U - // .. .. ==> MASK : 0x03F00000U VAL : 0x00400000U - // .. .. - EMIT_MASKWRITE(0XF8006078, 0x03FFFFFFU ,0x00466111U), - // .. .. reg_ddrc_t_ckpde = 0x2 - // .. .. ==> 0XF800607C[3:0] = 0x00000002U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000002U - // .. .. reg_ddrc_t_ckpdx = 0x2 - // .. .. ==> 0XF800607C[7:4] = 0x00000002U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000020U - // .. .. reg_ddrc_t_ckdpde = 0x2 - // .. .. ==> 0XF800607C[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. reg_ddrc_t_ckdpdx = 0x2 - // .. .. ==> 0XF800607C[15:12] = 0x00000002U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00002000U - // .. .. reg_ddrc_t_ckcsx = 0x3 - // .. .. ==> 0XF800607C[19:16] = 0x00000003U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00030000U - // .. .. - EMIT_MASKWRITE(0XF800607C, 0x000FFFFFU ,0x00032222U), - // .. .. refresh_timer0_start_value_x32 = 0x0 - // .. .. ==> 0XF80060A0[11:0] = 0x00000000U - // .. .. ==> MASK : 0x00000FFFU VAL : 0x00000000U - // .. .. refresh_timer1_start_value_x32 = 0x8 - // .. .. ==> 0XF80060A0[23:12] = 0x00000008U - // .. .. ==> MASK : 0x00FFF000U VAL : 0x00008000U - // .. .. - EMIT_MASKWRITE(0XF80060A0, 0x00FFFFFFU ,0x00008000U), - // .. .. reg_ddrc_dis_auto_zq = 0x0 - // .. .. ==> 0XF80060A4[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_ddr3 = 0x1 - // .. .. ==> 0XF80060A4[1:1] = 0x00000001U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. .. reg_ddrc_t_mod = 0x200 - // .. .. ==> 0XF80060A4[11:2] = 0x00000200U - // .. .. ==> MASK : 0x00000FFCU VAL : 0x00000800U - // .. .. reg_ddrc_t_zq_long_nop = 0x200 - // .. .. ==> 0XF80060A4[21:12] = 0x00000200U - // .. .. ==> MASK : 0x003FF000U VAL : 0x00200000U - // .. .. reg_ddrc_t_zq_short_nop = 0x40 - // .. .. ==> 0XF80060A4[31:22] = 0x00000040U - // .. .. ==> MASK : 0xFFC00000U VAL : 0x10000000U - // .. .. - EMIT_MASKWRITE(0XF80060A4, 0xFFFFFFFFU ,0x10200802U), - // .. .. t_zq_short_interval_x1024 = 0xc845 - // .. .. ==> 0XF80060A8[19:0] = 0x0000C845U - // .. .. ==> MASK : 0x000FFFFFU VAL : 0x0000C845U - // .. .. dram_rstn_x1024 = 0x67 - // .. .. ==> 0XF80060A8[27:20] = 0x00000067U - // .. .. ==> MASK : 0x0FF00000U VAL : 0x06700000U - // .. .. - EMIT_MASKWRITE(0XF80060A8, 0x0FFFFFFFU ,0x0670C845U), - // .. .. deeppowerdown_en = 0x0 - // .. .. ==> 0XF80060AC[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. deeppowerdown_to_x1024 = 0xff - // .. .. ==> 0XF80060AC[8:1] = 0x000000FFU - // .. .. ==> MASK : 0x000001FEU VAL : 0x000001FEU - // .. .. - EMIT_MASKWRITE(0XF80060AC, 0x000001FFU ,0x000001FEU), - // .. .. dfi_wrlvl_max_x1024 = 0xfff - // .. .. ==> 0XF80060B0[11:0] = 0x00000FFFU - // .. .. ==> MASK : 0x00000FFFU VAL : 0x00000FFFU - // .. .. dfi_rdlvl_max_x1024 = 0xfff - // .. .. ==> 0XF80060B0[23:12] = 0x00000FFFU - // .. .. ==> MASK : 0x00FFF000U VAL : 0x00FFF000U - // .. .. ddrc_reg_twrlvl_max_error = 0x0 - // .. .. ==> 0XF80060B0[24:24] = 0x00000000U - // .. .. ==> MASK : 0x01000000U VAL : 0x00000000U - // .. .. ddrc_reg_trdlvl_max_error = 0x0 - // .. .. ==> 0XF80060B0[25:25] = 0x00000000U - // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U - // .. .. reg_ddrc_dfi_wr_level_en = 0x1 - // .. .. ==> 0XF80060B0[26:26] = 0x00000001U - // .. .. ==> MASK : 0x04000000U VAL : 0x04000000U - // .. .. reg_ddrc_dfi_rd_dqs_gate_level = 0x1 - // .. .. ==> 0XF80060B0[27:27] = 0x00000001U - // .. .. ==> MASK : 0x08000000U VAL : 0x08000000U - // .. .. reg_ddrc_dfi_rd_data_eye_train = 0x1 - // .. .. ==> 0XF80060B0[28:28] = 0x00000001U - // .. .. ==> MASK : 0x10000000U VAL : 0x10000000U - // .. .. - EMIT_MASKWRITE(0XF80060B0, 0x1FFFFFFFU ,0x1CFFFFFFU), - // .. .. reg_ddrc_2t_delay = 0x0 - // .. .. ==> 0XF80060B4[8:0] = 0x00000000U - // .. .. ==> MASK : 0x000001FFU VAL : 0x00000000U - // .. .. reg_ddrc_skip_ocd = 0x1 - // .. .. ==> 0XF80060B4[9:9] = 0x00000001U - // .. .. ==> MASK : 0x00000200U VAL : 0x00000200U - // .. .. reg_ddrc_dis_pre_bypass = 0x0 - // .. .. ==> 0XF80060B4[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060B4, 0x000007FFU ,0x00000200U), - // .. .. reg_ddrc_dfi_t_rddata_en = 0x6 - // .. .. ==> 0XF80060B8[4:0] = 0x00000006U - // .. .. ==> MASK : 0x0000001FU VAL : 0x00000006U - // .. .. reg_ddrc_dfi_t_ctrlup_min = 0x3 - // .. .. ==> 0XF80060B8[14:5] = 0x00000003U - // .. .. ==> MASK : 0x00007FE0U VAL : 0x00000060U - // .. .. reg_ddrc_dfi_t_ctrlup_max = 0x40 - // .. .. ==> 0XF80060B8[24:15] = 0x00000040U - // .. .. ==> MASK : 0x01FF8000U VAL : 0x00200000U - // .. .. - EMIT_MASKWRITE(0XF80060B8, 0x01FFFFFFU ,0x00200066U), - // .. .. Clear_Uncorrectable_DRAM_ECC_error = 0x0 - // .. .. ==> 0XF80060C4[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. Clear_Correctable_DRAM_ECC_error = 0x0 - // .. .. ==> 0XF80060C4[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060C4, 0x00000003U ,0x00000000U), - // .. .. CORR_ECC_LOG_VALID = 0x0 - // .. .. ==> 0XF80060C8[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. ECC_CORRECTED_BIT_NUM = 0x0 - // .. .. ==> 0XF80060C8[7:1] = 0x00000000U - // .. .. ==> MASK : 0x000000FEU VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060C8, 0x000000FFU ,0x00000000U), - // .. .. UNCORR_ECC_LOG_VALID = 0x0 - // .. .. ==> 0XF80060DC[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060DC, 0x00000001U ,0x00000000U), - // .. .. STAT_NUM_CORR_ERR = 0x0 - // .. .. ==> 0XF80060F0[15:8] = 0x00000000U - // .. .. ==> MASK : 0x0000FF00U VAL : 0x00000000U - // .. .. STAT_NUM_UNCORR_ERR = 0x0 - // .. .. ==> 0XF80060F0[7:0] = 0x00000000U - // .. .. ==> MASK : 0x000000FFU VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060F0, 0x0000FFFFU ,0x00000000U), - // .. .. reg_ddrc_ecc_mode = 0x0 - // .. .. ==> 0XF80060F4[2:0] = 0x00000000U - // .. .. ==> MASK : 0x00000007U VAL : 0x00000000U - // .. .. reg_ddrc_dis_scrub = 0x1 - // .. .. ==> 0XF80060F4[3:3] = 0x00000001U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000008U - // .. .. - EMIT_MASKWRITE(0XF80060F4, 0x0000000FU ,0x00000008U), - // .. .. reg_phy_dif_on = 0x0 - // .. .. ==> 0XF8006114[3:0] = 0x00000000U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U - // .. .. reg_phy_dif_off = 0x0 - // .. .. ==> 0XF8006114[7:4] = 0x00000000U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006114, 0x000000FFU ,0x00000000U), - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF8006118[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006118[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF8006118[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006118[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_tx = 0x0 - // .. .. ==> 0XF8006118[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_rx = 0x0 - // .. .. ==> 0XF8006118[5:5] = 0x00000000U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF8006118[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF8006118[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF8006118[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF8006118, 0x7FFFFFFFU ,0x40000001U), - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF800611C[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF800611C[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF800611C[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF800611C[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_tx = 0x0 - // .. .. ==> 0XF800611C[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_rx = 0x0 - // .. .. ==> 0XF800611C[5:5] = 0x00000000U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF800611C[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF800611C[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF800611C[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF800611C, 0x7FFFFFFFU ,0x40000001U), - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF8006120[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006120[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF8006120[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006120[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_tx = 0x0 - // .. .. ==> 0XF8006120[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_rx = 0x0 - // .. .. ==> 0XF8006120[5:5] = 0x00000000U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF8006120[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF8006120[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF8006120[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF8006120[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006120[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF8006120[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006120[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_tx = 0x0 - // .. .. ==> 0XF8006120[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_rx = 0x0 - // .. .. ==> 0XF8006120[5:5] = 0x00000000U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF8006120[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF8006120[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF8006120[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF8006120, 0x7FFFFFFFU ,0x40000001U), - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF8006124[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006124[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF8006124[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006124[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_tx = 0x0 - // .. .. ==> 0XF8006124[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_rx = 0x0 - // .. .. ==> 0XF8006124[5:5] = 0x00000000U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF8006124[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF8006124[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF8006124[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF8006124, 0x7FFFFFFFU ,0x40000001U), - // .. .. reg_phy_wrlvl_init_ratio = 0x0 - // .. .. ==> 0XF800612C[9:0] = 0x00000000U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U - // .. .. reg_phy_gatelvl_init_ratio = 0x8f - // .. .. ==> 0XF800612C[19:10] = 0x0000008FU - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00023C00U - // .. .. - EMIT_MASKWRITE(0XF800612C, 0x000FFFFFU ,0x00023C00U), - // .. .. reg_phy_wrlvl_init_ratio = 0x0 - // .. .. ==> 0XF8006130[9:0] = 0x00000000U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U - // .. .. reg_phy_gatelvl_init_ratio = 0x8a - // .. .. ==> 0XF8006130[19:10] = 0x0000008AU - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00022800U - // .. .. - EMIT_MASKWRITE(0XF8006130, 0x000FFFFFU ,0x00022800U), - // .. .. reg_phy_wrlvl_init_ratio = 0x0 - // .. .. ==> 0XF8006134[9:0] = 0x00000000U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U - // .. .. reg_phy_gatelvl_init_ratio = 0x8b - // .. .. ==> 0XF8006134[19:10] = 0x0000008BU - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00022C00U - // .. .. - EMIT_MASKWRITE(0XF8006134, 0x000FFFFFU ,0x00022C00U), - // .. .. reg_phy_wrlvl_init_ratio = 0x0 - // .. .. ==> 0XF8006138[9:0] = 0x00000000U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U - // .. .. reg_phy_gatelvl_init_ratio = 0x92 - // .. .. ==> 0XF8006138[19:10] = 0x00000092U - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00024800U - // .. .. - EMIT_MASKWRITE(0XF8006138, 0x000FFFFFU ,0x00024800U), - // .. .. reg_phy_rd_dqs_slave_ratio = 0x35 - // .. .. ==> 0XF8006140[9:0] = 0x00000035U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U - // .. .. reg_phy_rd_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006140[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_rd_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006140[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006140, 0x000FFFFFU ,0x00000035U), - // .. .. reg_phy_rd_dqs_slave_ratio = 0x35 - // .. .. ==> 0XF8006144[9:0] = 0x00000035U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U - // .. .. reg_phy_rd_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006144[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_rd_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006144[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006144, 0x000FFFFFU ,0x00000035U), - // .. .. reg_phy_rd_dqs_slave_ratio = 0x35 - // .. .. ==> 0XF8006148[9:0] = 0x00000035U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U - // .. .. reg_phy_rd_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006148[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_rd_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006148[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006148, 0x000FFFFFU ,0x00000035U), - // .. .. reg_phy_rd_dqs_slave_ratio = 0x35 - // .. .. ==> 0XF800614C[9:0] = 0x00000035U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U - // .. .. reg_phy_rd_dqs_slave_force = 0x0 - // .. .. ==> 0XF800614C[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_rd_dqs_slave_delay = 0x0 - // .. .. ==> 0XF800614C[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800614C, 0x000FFFFFU ,0x00000035U), - // .. .. reg_phy_wr_dqs_slave_ratio = 0x77 - // .. .. ==> 0XF8006154[9:0] = 0x00000077U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000077U - // .. .. reg_phy_wr_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006154[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006154[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006154, 0x000FFFFFU ,0x00000077U), - // .. .. reg_phy_wr_dqs_slave_ratio = 0x7c - // .. .. ==> 0XF8006158[9:0] = 0x0000007CU - // .. .. ==> MASK : 0x000003FFU VAL : 0x0000007CU - // .. .. reg_phy_wr_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006158[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006158[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006158, 0x000FFFFFU ,0x0000007CU), - // .. .. reg_phy_wr_dqs_slave_ratio = 0x7c - // .. .. ==> 0XF800615C[9:0] = 0x0000007CU - // .. .. ==> MASK : 0x000003FFU VAL : 0x0000007CU - // .. .. reg_phy_wr_dqs_slave_force = 0x0 - // .. .. ==> 0XF800615C[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_dqs_slave_delay = 0x0 - // .. .. ==> 0XF800615C[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800615C, 0x000FFFFFU ,0x0000007CU), - // .. .. reg_phy_wr_dqs_slave_ratio = 0x75 - // .. .. ==> 0XF8006160[9:0] = 0x00000075U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000075U - // .. .. reg_phy_wr_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006160[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006160[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006160, 0x000FFFFFU ,0x00000075U), - // .. .. reg_phy_fifo_we_slave_ratio = 0xe4 - // .. .. ==> 0XF8006168[10:0] = 0x000000E4U - // .. .. ==> MASK : 0x000007FFU VAL : 0x000000E4U - // .. .. reg_phy_fifo_we_in_force = 0x0 - // .. .. ==> 0XF8006168[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. reg_phy_fifo_we_in_delay = 0x0 - // .. .. ==> 0XF8006168[20:12] = 0x00000000U - // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006168, 0x001FFFFFU ,0x000000E4U), - // .. .. reg_phy_fifo_we_slave_ratio = 0xdf - // .. .. ==> 0XF800616C[10:0] = 0x000000DFU - // .. .. ==> MASK : 0x000007FFU VAL : 0x000000DFU - // .. .. reg_phy_fifo_we_in_force = 0x0 - // .. .. ==> 0XF800616C[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. reg_phy_fifo_we_in_delay = 0x0 - // .. .. ==> 0XF800616C[20:12] = 0x00000000U - // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800616C, 0x001FFFFFU ,0x000000DFU), - // .. .. reg_phy_fifo_we_slave_ratio = 0xe0 - // .. .. ==> 0XF8006170[10:0] = 0x000000E0U - // .. .. ==> MASK : 0x000007FFU VAL : 0x000000E0U - // .. .. reg_phy_fifo_we_in_force = 0x0 - // .. .. ==> 0XF8006170[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. reg_phy_fifo_we_in_delay = 0x0 - // .. .. ==> 0XF8006170[20:12] = 0x00000000U - // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006170, 0x001FFFFFU ,0x000000E0U), - // .. .. reg_phy_fifo_we_slave_ratio = 0xe7 - // .. .. ==> 0XF8006174[10:0] = 0x000000E7U - // .. .. ==> MASK : 0x000007FFU VAL : 0x000000E7U - // .. .. reg_phy_fifo_we_in_force = 0x0 - // .. .. ==> 0XF8006174[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. reg_phy_fifo_we_in_delay = 0x0 - // .. .. ==> 0XF8006174[20:12] = 0x00000000U - // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006174, 0x001FFFFFU ,0x000000E7U), - // .. .. reg_phy_wr_data_slave_ratio = 0xb7 - // .. .. ==> 0XF800617C[9:0] = 0x000000B7U - // .. .. ==> MASK : 0x000003FFU VAL : 0x000000B7U - // .. .. reg_phy_wr_data_slave_force = 0x0 - // .. .. ==> 0XF800617C[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_data_slave_delay = 0x0 - // .. .. ==> 0XF800617C[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800617C, 0x000FFFFFU ,0x000000B7U), - // .. .. reg_phy_wr_data_slave_ratio = 0xbc - // .. .. ==> 0XF8006180[9:0] = 0x000000BCU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000000BCU - // .. .. reg_phy_wr_data_slave_force = 0x0 - // .. .. ==> 0XF8006180[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_data_slave_delay = 0x0 - // .. .. ==> 0XF8006180[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006180, 0x000FFFFFU ,0x000000BCU), - // .. .. reg_phy_wr_data_slave_ratio = 0xbc - // .. .. ==> 0XF8006184[9:0] = 0x000000BCU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000000BCU - // .. .. reg_phy_wr_data_slave_force = 0x0 - // .. .. ==> 0XF8006184[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_data_slave_delay = 0x0 - // .. .. ==> 0XF8006184[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006184, 0x000FFFFFU ,0x000000BCU), - // .. .. reg_phy_wr_data_slave_ratio = 0xb5 - // .. .. ==> 0XF8006188[9:0] = 0x000000B5U - // .. .. ==> MASK : 0x000003FFU VAL : 0x000000B5U - // .. .. reg_phy_wr_data_slave_force = 0x0 - // .. .. ==> 0XF8006188[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_data_slave_delay = 0x0 - // .. .. ==> 0XF8006188[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006188, 0x000FFFFFU ,0x000000B5U), - // .. .. reg_phy_loopback = 0x0 - // .. .. ==> 0XF8006190[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_phy_bl2 = 0x0 - // .. .. ==> 0XF8006190[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_at_spd_atpg = 0x0 - // .. .. ==> 0XF8006190[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_bist_enable = 0x0 - // .. .. ==> 0XF8006190[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_bist_force_err = 0x0 - // .. .. ==> 0XF8006190[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reg_phy_bist_mode = 0x0 - // .. .. ==> 0XF8006190[6:5] = 0x00000000U - // .. .. ==> MASK : 0x00000060U VAL : 0x00000000U - // .. .. reg_phy_invert_clkout = 0x1 - // .. .. ==> 0XF8006190[7:7] = 0x00000001U - // .. .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. .. reg_phy_all_dq_mpr_rd_resp = 0x0 - // .. .. ==> 0XF8006190[8:8] = 0x00000000U - // .. .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. .. reg_phy_sel_logic = 0x0 - // .. .. ==> 0XF8006190[9:9] = 0x00000000U - // .. .. ==> MASK : 0x00000200U VAL : 0x00000000U - // .. .. reg_phy_ctrl_slave_ratio = 0x100 - // .. .. ==> 0XF8006190[19:10] = 0x00000100U - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00040000U - // .. .. reg_phy_ctrl_slave_force = 0x0 - // .. .. ==> 0XF8006190[20:20] = 0x00000000U - // .. .. ==> MASK : 0x00100000U VAL : 0x00000000U - // .. .. reg_phy_ctrl_slave_delay = 0x0 - // .. .. ==> 0XF8006190[27:21] = 0x00000000U - // .. .. ==> MASK : 0x0FE00000U VAL : 0x00000000U - // .. .. reg_phy_use_rank0_delays = 0x1 - // .. .. ==> 0XF8006190[28:28] = 0x00000001U - // .. .. ==> MASK : 0x10000000U VAL : 0x10000000U - // .. .. reg_phy_lpddr = 0x0 - // .. .. ==> 0XF8006190[29:29] = 0x00000000U - // .. .. ==> MASK : 0x20000000U VAL : 0x00000000U - // .. .. reg_phy_cmd_latency = 0x0 - // .. .. ==> 0XF8006190[30:30] = 0x00000000U - // .. .. ==> MASK : 0x40000000U VAL : 0x00000000U - // .. .. reg_phy_int_lpbk = 0x0 - // .. .. ==> 0XF8006190[31:31] = 0x00000000U - // .. .. ==> MASK : 0x80000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006190, 0xFFFFFFFFU ,0x10040080U), - // .. .. reg_phy_wr_rl_delay = 0x2 - // .. .. ==> 0XF8006194[4:0] = 0x00000002U - // .. .. ==> MASK : 0x0000001FU VAL : 0x00000002U - // .. .. reg_phy_rd_rl_delay = 0x4 - // .. .. ==> 0XF8006194[9:5] = 0x00000004U - // .. .. ==> MASK : 0x000003E0U VAL : 0x00000080U - // .. .. reg_phy_dll_lock_diff = 0xf - // .. .. ==> 0XF8006194[13:10] = 0x0000000FU - // .. .. ==> MASK : 0x00003C00U VAL : 0x00003C00U - // .. .. reg_phy_use_wr_level = 0x1 - // .. .. ==> 0XF8006194[14:14] = 0x00000001U - // .. .. ==> MASK : 0x00004000U VAL : 0x00004000U - // .. .. reg_phy_use_rd_dqs_gate_level = 0x1 - // .. .. ==> 0XF8006194[15:15] = 0x00000001U - // .. .. ==> MASK : 0x00008000U VAL : 0x00008000U - // .. .. reg_phy_use_rd_data_eye_level = 0x1 - // .. .. ==> 0XF8006194[16:16] = 0x00000001U - // .. .. ==> MASK : 0x00010000U VAL : 0x00010000U - // .. .. reg_phy_dis_calib_rst = 0x0 - // .. .. ==> 0XF8006194[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_phy_ctrl_slave_delay = 0x0 - // .. .. ==> 0XF8006194[19:18] = 0x00000000U - // .. .. ==> MASK : 0x000C0000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006194, 0x000FFFFFU ,0x0001FC82U), - // .. .. reg_arb_page_addr_mask = 0x0 - // .. .. ==> 0XF8006204[31:0] = 0x00000000U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006204, 0xFFFFFFFFU ,0x00000000U), - // .. .. reg_arb_pri_wr_portn = 0x3ff - // .. .. ==> 0XF8006208[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_wr_portn = 0x0 - // .. .. ==> 0XF8006208[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_wr_portn = 0x0 - // .. .. ==> 0XF8006208[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_wr_portn = 0x0 - // .. .. ==> 0XF8006208[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_dis_rmw_portn = 0x1 - // .. .. ==> 0XF8006208[19:19] = 0x00000001U - // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. .. - EMIT_MASKWRITE(0XF8006208, 0x000F03FFU ,0x000803FFU), - // .. .. reg_arb_pri_wr_portn = 0x3ff - // .. .. ==> 0XF800620C[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_wr_portn = 0x0 - // .. .. ==> 0XF800620C[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_wr_portn = 0x0 - // .. .. ==> 0XF800620C[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_wr_portn = 0x0 - // .. .. ==> 0XF800620C[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_dis_rmw_portn = 0x1 - // .. .. ==> 0XF800620C[19:19] = 0x00000001U - // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. .. - EMIT_MASKWRITE(0XF800620C, 0x000F03FFU ,0x000803FFU), - // .. .. reg_arb_pri_wr_portn = 0x3ff - // .. .. ==> 0XF8006210[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_wr_portn = 0x0 - // .. .. ==> 0XF8006210[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_wr_portn = 0x0 - // .. .. ==> 0XF8006210[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_wr_portn = 0x0 - // .. .. ==> 0XF8006210[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_dis_rmw_portn = 0x1 - // .. .. ==> 0XF8006210[19:19] = 0x00000001U - // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. .. - EMIT_MASKWRITE(0XF8006210, 0x000F03FFU ,0x000803FFU), - // .. .. reg_arb_pri_wr_portn = 0x3ff - // .. .. ==> 0XF8006214[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_wr_portn = 0x0 - // .. .. ==> 0XF8006214[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_wr_portn = 0x0 - // .. .. ==> 0XF8006214[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_wr_portn = 0x0 - // .. .. ==> 0XF8006214[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_dis_rmw_portn = 0x1 - // .. .. ==> 0XF8006214[19:19] = 0x00000001U - // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. .. - EMIT_MASKWRITE(0XF8006214, 0x000F03FFU ,0x000803FFU), - // .. .. reg_arb_pri_rd_portn = 0x3ff - // .. .. ==> 0XF8006218[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_rd_portn = 0x0 - // .. .. ==> 0XF8006218[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_rd_portn = 0x0 - // .. .. ==> 0XF8006218[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_rd_portn = 0x0 - // .. .. ==> 0XF8006218[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_set_hpr_rd_portn = 0x0 - // .. .. ==> 0XF8006218[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006218, 0x000F03FFU ,0x000003FFU), - // .. .. reg_arb_pri_rd_portn = 0x3ff - // .. .. ==> 0XF800621C[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_rd_portn = 0x0 - // .. .. ==> 0XF800621C[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_rd_portn = 0x0 - // .. .. ==> 0XF800621C[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_rd_portn = 0x0 - // .. .. ==> 0XF800621C[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_set_hpr_rd_portn = 0x0 - // .. .. ==> 0XF800621C[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800621C, 0x000F03FFU ,0x000003FFU), - // .. .. reg_arb_pri_rd_portn = 0x3ff - // .. .. ==> 0XF8006220[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_rd_portn = 0x0 - // .. .. ==> 0XF8006220[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_rd_portn = 0x0 - // .. .. ==> 0XF8006220[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_rd_portn = 0x0 - // .. .. ==> 0XF8006220[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_set_hpr_rd_portn = 0x0 - // .. .. ==> 0XF8006220[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006220, 0x000F03FFU ,0x000003FFU), - // .. .. reg_arb_pri_rd_portn = 0x3ff - // .. .. ==> 0XF8006224[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_rd_portn = 0x0 - // .. .. ==> 0XF8006224[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_rd_portn = 0x0 - // .. .. ==> 0XF8006224[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_rd_portn = 0x0 - // .. .. ==> 0XF8006224[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_set_hpr_rd_portn = 0x0 - // .. .. ==> 0XF8006224[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006224, 0x000F03FFU ,0x000003FFU), - // .. .. reg_ddrc_lpddr2 = 0x0 - // .. .. ==> 0XF80062A8[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_per_bank_refresh = 0x0 - // .. .. ==> 0XF80062A8[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_ddrc_derate_enable = 0x0 - // .. .. ==> 0XF80062A8[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_ddrc_mr4_margin = 0x0 - // .. .. ==> 0XF80062A8[11:4] = 0x00000000U - // .. .. ==> MASK : 0x00000FF0U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80062A8, 0x00000FF7U ,0x00000000U), - // .. .. reg_ddrc_mr4_read_interval = 0x0 - // .. .. ==> 0XF80062AC[31:0] = 0x00000000U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80062AC, 0xFFFFFFFFU ,0x00000000U), - // .. .. reg_ddrc_min_stable_clock_x1 = 0x5 - // .. .. ==> 0XF80062B0[3:0] = 0x00000005U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000005U - // .. .. reg_ddrc_idle_after_reset_x32 = 0x12 - // .. .. ==> 0XF80062B0[11:4] = 0x00000012U - // .. .. ==> MASK : 0x00000FF0U VAL : 0x00000120U - // .. .. reg_ddrc_t_mrw = 0x5 - // .. .. ==> 0XF80062B0[21:12] = 0x00000005U - // .. .. ==> MASK : 0x003FF000U VAL : 0x00005000U - // .. .. - EMIT_MASKWRITE(0XF80062B0, 0x003FFFFFU ,0x00005125U), - // .. .. reg_ddrc_max_auto_init_x1024 = 0xa6 - // .. .. ==> 0XF80062B4[7:0] = 0x000000A6U - // .. .. ==> MASK : 0x000000FFU VAL : 0x000000A6U - // .. .. reg_ddrc_dev_zqinit_x32 = 0x12 - // .. .. ==> 0XF80062B4[17:8] = 0x00000012U - // .. .. ==> MASK : 0x0003FF00U VAL : 0x00001200U - // .. .. - EMIT_MASKWRITE(0XF80062B4, 0x0003FFFFU ,0x000012A6U), - // .. .. START: POLL ON DCI STATUS - // .. .. DONE = 1 - // .. .. ==> 0XF8000B74[13:13] = 0x00000001U - // .. .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. .. - EMIT_MASKPOLL(0XF8000B74, 0x00002000U), - // .. .. FINISH: POLL ON DCI STATUS - // .. .. START: UNLOCK DDR - // .. .. reg_ddrc_soft_rstb = 0x1 - // .. .. ==> 0XF8006000[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_ddrc_powerdown_en = 0x0 - // .. .. ==> 0XF8006000[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_ddrc_data_bus_width = 0x0 - // .. .. ==> 0XF8006000[3:2] = 0x00000000U - // .. .. ==> MASK : 0x0000000CU VAL : 0x00000000U - // .. .. reg_ddrc_burst8_refresh = 0x0 - // .. .. ==> 0XF8006000[6:4] = 0x00000000U - // .. .. ==> MASK : 0x00000070U VAL : 0x00000000U - // .. .. reg_ddrc_rdwr_idle_gap = 1 - // .. .. ==> 0XF8006000[13:7] = 0x00000001U - // .. .. ==> MASK : 0x00003F80U VAL : 0x00000080U - // .. .. reg_ddrc_dis_rd_bypass = 0x0 - // .. .. ==> 0XF8006000[14:14] = 0x00000000U - // .. .. ==> MASK : 0x00004000U VAL : 0x00000000U - // .. .. reg_ddrc_dis_act_bypass = 0x0 - // .. .. ==> 0XF8006000[15:15] = 0x00000000U - // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U - // .. .. reg_ddrc_dis_auto_refresh = 0x0 - // .. .. ==> 0XF8006000[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006000, 0x0001FFFFU ,0x00000081U), - // .. .. FINISH: UNLOCK DDR - // .. .. START: CHECK DDR STATUS - // .. .. ddrc_reg_operating_mode = 1 - // .. .. ==> 0XF8006054[2:0] = 0x00000001U - // .. .. ==> MASK : 0x00000007U VAL : 0x00000001U - // .. .. - EMIT_MASKPOLL(0XF8006054, 0x00000007U), - // .. .. FINISH: CHECK DDR STATUS - // .. FINISH: DDR INITIALIZATION - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_mio_init_data_2_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: OCM REMAPPING - // .. VREF_EN = 0x1 - // .. ==> 0XF8000B00[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. VREF_PULLUP_EN = 0x0 - // .. ==> 0XF8000B00[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. CLK_PULLUP_EN = 0x0 - // .. ==> 0XF8000B00[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. SRSTN_PULLUP_EN = 0x0 - // .. ==> 0XF8000B00[9:9] = 0x00000000U - // .. ==> MASK : 0x00000200U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B00, 0x00000303U ,0x00000001U), - // .. FINISH: OCM REMAPPING - // .. START: DDRIOB SETTINGS - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B40[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x0 - // .. ==> 0XF8000B40[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B40[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x0 - // .. ==> 0XF8000B40[4:4] = 0x00000000U - // .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. DCR_TYPE = 0x0 - // .. ==> 0XF8000B40[6:5] = 0x00000000U - // .. ==> MASK : 0x00000060U VAL : 0x00000000U - // .. IBUF_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B40[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B40[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B40[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B40[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B40, 0x00000FFFU ,0x00000600U), - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B44[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x0 - // .. ==> 0XF8000B44[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B44[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x0 - // .. ==> 0XF8000B44[4:4] = 0x00000000U - // .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. DCR_TYPE = 0x0 - // .. ==> 0XF8000B44[6:5] = 0x00000000U - // .. ==> MASK : 0x00000060U VAL : 0x00000000U - // .. IBUF_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B44[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B44[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B44[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B44[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B44, 0x00000FFFU ,0x00000600U), - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B48[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x1 - // .. ==> 0XF8000B48[2:1] = 0x00000001U - // .. ==> MASK : 0x00000006U VAL : 0x00000002U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B48[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x1 - // .. ==> 0XF8000B48[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. DCR_TYPE = 0x3 - // .. ==> 0XF8000B48[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. IBUF_DISABLE_MODE = 0 - // .. ==> 0XF8000B48[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0 - // .. ==> 0XF8000B48[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B48[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B48[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B48, 0x00000FFFU ,0x00000672U), - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B4C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x1 - // .. ==> 0XF8000B4C[2:1] = 0x00000001U - // .. ==> MASK : 0x00000006U VAL : 0x00000002U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B4C[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x1 - // .. ==> 0XF8000B4C[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. DCR_TYPE = 0x3 - // .. ==> 0XF8000B4C[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. IBUF_DISABLE_MODE = 0 - // .. ==> 0XF8000B4C[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0 - // .. ==> 0XF8000B4C[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B4C[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B4C[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B4C, 0x00000FFFU ,0x00000672U), - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B50[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x2 - // .. ==> 0XF8000B50[2:1] = 0x00000002U - // .. ==> MASK : 0x00000006U VAL : 0x00000004U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B50[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x1 - // .. ==> 0XF8000B50[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. DCR_TYPE = 0x3 - // .. ==> 0XF8000B50[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. IBUF_DISABLE_MODE = 0 - // .. ==> 0XF8000B50[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0 - // .. ==> 0XF8000B50[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B50[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B50[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B50, 0x00000FFFU ,0x00000674U), - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B54[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x2 - // .. ==> 0XF8000B54[2:1] = 0x00000002U - // .. ==> MASK : 0x00000006U VAL : 0x00000004U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B54[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x1 - // .. ==> 0XF8000B54[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. DCR_TYPE = 0x3 - // .. ==> 0XF8000B54[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. IBUF_DISABLE_MODE = 0 - // .. ==> 0XF8000B54[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0 - // .. ==> 0XF8000B54[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B54[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B54[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B54, 0x00000FFFU ,0x00000674U), - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B58[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x0 - // .. ==> 0XF8000B58[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B58[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x0 - // .. ==> 0XF8000B58[4:4] = 0x00000000U - // .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. DCR_TYPE = 0x0 - // .. ==> 0XF8000B58[6:5] = 0x00000000U - // .. ==> MASK : 0x00000060U VAL : 0x00000000U - // .. IBUF_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B58[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B58[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B58[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B58[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B58, 0x00000FFFU ,0x00000600U), - // .. DRIVE_P = 0x1c - // .. ==> 0XF8000B5C[6:0] = 0x0000001CU - // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU - // .. DRIVE_N = 0xc - // .. ==> 0XF8000B5C[13:7] = 0x0000000CU - // .. ==> MASK : 0x00003F80U VAL : 0x00000600U - // .. SLEW_P = 0x3 - // .. ==> 0XF8000B5C[18:14] = 0x00000003U - // .. ==> MASK : 0x0007C000U VAL : 0x0000C000U - // .. SLEW_N = 0x3 - // .. ==> 0XF8000B5C[23:19] = 0x00000003U - // .. ==> MASK : 0x00F80000U VAL : 0x00180000U - // .. GTL = 0x0 - // .. ==> 0XF8000B5C[26:24] = 0x00000000U - // .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. RTERM = 0x0 - // .. ==> 0XF8000B5C[31:27] = 0x00000000U - // .. ==> MASK : 0xF8000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B5C, 0xFFFFFFFFU ,0x0018C61CU), - // .. DRIVE_P = 0x1c - // .. ==> 0XF8000B60[6:0] = 0x0000001CU - // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU - // .. DRIVE_N = 0xc - // .. ==> 0XF8000B60[13:7] = 0x0000000CU - // .. ==> MASK : 0x00003F80U VAL : 0x00000600U - // .. SLEW_P = 0x6 - // .. ==> 0XF8000B60[18:14] = 0x00000006U - // .. ==> MASK : 0x0007C000U VAL : 0x00018000U - // .. SLEW_N = 0x1f - // .. ==> 0XF8000B60[23:19] = 0x0000001FU - // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U - // .. GTL = 0x0 - // .. ==> 0XF8000B60[26:24] = 0x00000000U - // .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. RTERM = 0x0 - // .. ==> 0XF8000B60[31:27] = 0x00000000U - // .. ==> MASK : 0xF8000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B60, 0xFFFFFFFFU ,0x00F9861CU), - // .. DRIVE_P = 0x1c - // .. ==> 0XF8000B64[6:0] = 0x0000001CU - // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU - // .. DRIVE_N = 0xc - // .. ==> 0XF8000B64[13:7] = 0x0000000CU - // .. ==> MASK : 0x00003F80U VAL : 0x00000600U - // .. SLEW_P = 0x6 - // .. ==> 0XF8000B64[18:14] = 0x00000006U - // .. ==> MASK : 0x0007C000U VAL : 0x00018000U - // .. SLEW_N = 0x1f - // .. ==> 0XF8000B64[23:19] = 0x0000001FU - // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U - // .. GTL = 0x0 - // .. ==> 0XF8000B64[26:24] = 0x00000000U - // .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. RTERM = 0x0 - // .. ==> 0XF8000B64[31:27] = 0x00000000U - // .. ==> MASK : 0xF8000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B64, 0xFFFFFFFFU ,0x00F9861CU), - // .. DRIVE_P = 0x1c - // .. ==> 0XF8000B68[6:0] = 0x0000001CU - // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU - // .. DRIVE_N = 0xc - // .. ==> 0XF8000B68[13:7] = 0x0000000CU - // .. ==> MASK : 0x00003F80U VAL : 0x00000600U - // .. SLEW_P = 0x6 - // .. ==> 0XF8000B68[18:14] = 0x00000006U - // .. ==> MASK : 0x0007C000U VAL : 0x00018000U - // .. SLEW_N = 0x1f - // .. ==> 0XF8000B68[23:19] = 0x0000001FU - // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U - // .. GTL = 0x0 - // .. ==> 0XF8000B68[26:24] = 0x00000000U - // .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. RTERM = 0x0 - // .. ==> 0XF8000B68[31:27] = 0x00000000U - // .. ==> MASK : 0xF8000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B68, 0xFFFFFFFFU ,0x00F9861CU), - // .. VREF_INT_EN = 0x0 - // .. ==> 0XF8000B6C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. VREF_SEL = 0x0 - // .. ==> 0XF8000B6C[4:1] = 0x00000000U - // .. ==> MASK : 0x0000001EU VAL : 0x00000000U - // .. VREF_EXT_EN = 0x3 - // .. ==> 0XF8000B6C[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. VREF_PULLUP_EN = 0x0 - // .. ==> 0XF8000B6C[8:7] = 0x00000000U - // .. ==> MASK : 0x00000180U VAL : 0x00000000U - // .. REFIO_EN = 0x1 - // .. ==> 0XF8000B6C[9:9] = 0x00000001U - // .. ==> MASK : 0x00000200U VAL : 0x00000200U - // .. REFIO_TEST = 0x0 - // .. ==> 0XF8000B6C[11:10] = 0x00000000U - // .. ==> MASK : 0x00000C00U VAL : 0x00000000U - // .. REFIO_PULLUP_EN = 0x0 - // .. ==> 0XF8000B6C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DRST_B_PULLUP_EN = 0x0 - // .. ==> 0XF8000B6C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. CKE_PULLUP_EN = 0x0 - // .. ==> 0XF8000B6C[14:14] = 0x00000000U - // .. ==> MASK : 0x00004000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B6C, 0x00007FFFU ,0x00000260U), - // .. .. START: ASSERT RESET - // .. .. RESET = 1 - // .. .. ==> 0XF8000B70[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. VRN_OUT = 0x1 - // .. .. ==> 0XF8000B70[5:5] = 0x00000001U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000020U - // .. .. - EMIT_MASKWRITE(0XF8000B70, 0x00000021U ,0x00000021U), - // .. .. FINISH: ASSERT RESET - // .. .. START: DEASSERT RESET - // .. .. RESET = 0 - // .. .. ==> 0XF8000B70[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. VRN_OUT = 0x1 - // .. .. ==> 0XF8000B70[5:5] = 0x00000001U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000020U - // .. .. - EMIT_MASKWRITE(0XF8000B70, 0x00000021U ,0x00000020U), - // .. .. FINISH: DEASSERT RESET - // .. .. RESET = 0x1 - // .. .. ==> 0XF8000B70[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. ENABLE = 0x1 - // .. .. ==> 0XF8000B70[1:1] = 0x00000001U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. .. VRP_TRI = 0x0 - // .. .. ==> 0XF8000B70[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. VRN_TRI = 0x0 - // .. .. ==> 0XF8000B70[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. VRP_OUT = 0x0 - // .. .. ==> 0XF8000B70[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. VRN_OUT = 0x1 - // .. .. ==> 0XF8000B70[5:5] = 0x00000001U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000020U - // .. .. NREF_OPT1 = 0x0 - // .. .. ==> 0XF8000B70[7:6] = 0x00000000U - // .. .. ==> MASK : 0x000000C0U VAL : 0x00000000U - // .. .. NREF_OPT2 = 0x0 - // .. .. ==> 0XF8000B70[10:8] = 0x00000000U - // .. .. ==> MASK : 0x00000700U VAL : 0x00000000U - // .. .. NREF_OPT4 = 0x1 - // .. .. ==> 0XF8000B70[13:11] = 0x00000001U - // .. .. ==> MASK : 0x00003800U VAL : 0x00000800U - // .. .. PREF_OPT1 = 0x0 - // .. .. ==> 0XF8000B70[16:14] = 0x00000000U - // .. .. ==> MASK : 0x0001C000U VAL : 0x00000000U - // .. .. PREF_OPT2 = 0x0 - // .. .. ==> 0XF8000B70[19:17] = 0x00000000U - // .. .. ==> MASK : 0x000E0000U VAL : 0x00000000U - // .. .. UPDATE_CONTROL = 0x0 - // .. .. ==> 0XF8000B70[20:20] = 0x00000000U - // .. .. ==> MASK : 0x00100000U VAL : 0x00000000U - // .. .. INIT_COMPLETE = 0x0 - // .. .. ==> 0XF8000B70[21:21] = 0x00000000U - // .. .. ==> MASK : 0x00200000U VAL : 0x00000000U - // .. .. TST_CLK = 0x0 - // .. .. ==> 0XF8000B70[22:22] = 0x00000000U - // .. .. ==> MASK : 0x00400000U VAL : 0x00000000U - // .. .. TST_HLN = 0x0 - // .. .. ==> 0XF8000B70[23:23] = 0x00000000U - // .. .. ==> MASK : 0x00800000U VAL : 0x00000000U - // .. .. TST_HLP = 0x0 - // .. .. ==> 0XF8000B70[24:24] = 0x00000000U - // .. .. ==> MASK : 0x01000000U VAL : 0x00000000U - // .. .. TST_RST = 0x0 - // .. .. ==> 0XF8000B70[25:25] = 0x00000000U - // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U - // .. .. INT_DCI_EN = 0x0 - // .. .. ==> 0XF8000B70[26:26] = 0x00000000U - // .. .. ==> MASK : 0x04000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8000B70, 0x07FFFFFFU ,0x00000823U), - // .. FINISH: DDRIOB SETTINGS - // .. START: MIO PROGRAMMING - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000700[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000700[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000700[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000700[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000700[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF8000700[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000700[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000700[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000700[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000700, 0x00003FFFU ,0x00001600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000704[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000704[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000704[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000704[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000704[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000704[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000704[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000704[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000704[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000704, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000708[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000708[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000708[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000708[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000708[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000708[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000708[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000708[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000708[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000708, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800070C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF800070C[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF800070C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800070C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800070C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800070C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF800070C[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF800070C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800070C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800070C, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000710[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000710[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000710[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000710[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000710[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000710[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000710[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000710[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000710[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000710, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000714[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000714[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000714[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000714[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000714[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000714[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000714[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000714[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000714[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000714, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000718[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000718[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000718[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000718[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000718[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000718[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000718[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000718[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000718[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000718, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800071C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800071C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF800071C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800071C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800071C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF800071C[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF800071C[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF800071C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800071C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800071C, 0x00003FFFU ,0x00000600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000720[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000720[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000720[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000720[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000720[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000720[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000720[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000720[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000720[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000720, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000724[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000724[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000724[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000724[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000724[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF8000724[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000724[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000724[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000724[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000724, 0x00003FFFU ,0x00001600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000728[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000728[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000728[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000728[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 2 - // .. ==> 0XF8000728[7:5] = 0x00000002U - // .. ==> MASK : 0x000000E0U VAL : 0x00000040U - // .. Speed = 0 - // .. ==> 0XF8000728[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000728[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000728[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000728[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000728, 0x00003FFFU ,0x00001640U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800072C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800072C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF800072C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800072C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 2 - // .. ==> 0XF800072C[7:5] = 0x00000002U - // .. ==> MASK : 0x000000E0U VAL : 0x00000040U - // .. Speed = 0 - // .. ==> 0XF800072C[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF800072C[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF800072C[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF800072C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800072C, 0x00003FFFU ,0x00001640U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000730[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000730[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000730[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000730[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 2 - // .. ==> 0XF8000730[7:5] = 0x00000002U - // .. ==> MASK : 0x000000E0U VAL : 0x00000040U - // .. Speed = 0 - // .. ==> 0XF8000730[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000730[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000730[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000730[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000730, 0x00003FFFU ,0x00001640U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000734[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000734[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000734[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000734[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 2 - // .. ==> 0XF8000734[7:5] = 0x00000002U - // .. ==> MASK : 0x000000E0U VAL : 0x00000040U - // .. Speed = 0 - // .. ==> 0XF8000734[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000734[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000734[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000734[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000734, 0x00003FFFU ,0x00001640U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000738[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000738[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000738[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000738[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000738[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF8000738[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000738[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000738[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000738[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000738, 0x00003FFFU ,0x00001600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800073C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800073C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF800073C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800073C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800073C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF800073C[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF800073C[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF800073C[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF800073C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800073C, 0x00003FFFU ,0x00001600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000740[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000740[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000740[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000740[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000740[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000740[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000740[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000740[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000740[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000740, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000744[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000744[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000744[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000744[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000744[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000744[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000744[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000744[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000744[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000744, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000748[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000748[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000748[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000748[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000748[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000748[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000748[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000748[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000748[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000748, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800074C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF800074C[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF800074C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800074C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800074C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800074C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF800074C[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF800074C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF800074C[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF800074C, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000750[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000750[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000750[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000750[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000750[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000750[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000750[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000750[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000750[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000750, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000754[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000754[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000754[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000754[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000754[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000754[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000754[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000754[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000754[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000754, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000758[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF8000758[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000758[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000758[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000758[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000758[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000758[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000758[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000758[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000758, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF800075C[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF800075C[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF800075C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800075C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800075C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800075C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF800075C[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF800075C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800075C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800075C, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000760[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF8000760[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000760[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000760[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000760[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000760[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000760[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000760[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000760[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000760, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000764[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF8000764[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000764[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000764[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000764[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000764[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000764[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000764[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000764[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000764, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000768[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF8000768[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000768[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000768[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000768[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000768[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000768[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000768[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000768[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000768, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF800076C[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF800076C[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF800076C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800076C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800076C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800076C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF800076C[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF800076C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800076C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800076C, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000770[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000770[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000770[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000770[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000770[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000770[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000770[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000770[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000770[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000770, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000774[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 0 - // .. ==> 0XF8000774[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000774[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000774[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000774[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000774[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000774[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000774[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000774[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000774, 0x00003FFFU ,0x00000305U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000778[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000778[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000778[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000778[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000778[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000778[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000778[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000778[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000778[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000778, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF800077C[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 0 - // .. ==> 0XF800077C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF800077C[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF800077C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800077C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800077C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF800077C[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF800077C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800077C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800077C, 0x00003FFFU ,0x00000305U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000780[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000780[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000780[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000780[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000780[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000780[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000780[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000780[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000780[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000780, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000784[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000784[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000784[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000784[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000784[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000784[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000784[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000784[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000784[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000784, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000788[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000788[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000788[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000788[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000788[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000788[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000788[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000788[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000788[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000788, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800078C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800078C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF800078C[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF800078C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800078C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800078C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF800078C[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF800078C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800078C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800078C, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000790[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 0 - // .. ==> 0XF8000790[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000790[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000790[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000790[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000790[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000790[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000790[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000790[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000790, 0x00003FFFU ,0x00000305U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000794[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000794[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000794[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000794[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000794[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000794[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000794[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000794[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000794[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000794, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000798[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000798[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000798[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000798[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000798[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000798[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000798[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000798[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000798[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000798, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800079C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800079C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF800079C[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF800079C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800079C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800079C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF800079C[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF800079C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800079C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800079C, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007A0[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007A0[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007A0[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007A0[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007A0[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007A0[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007A0[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007A0[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007A0[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007A0, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007A4[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007A4[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007A4[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007A4[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007A4[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007A4[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007A4[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007A4[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007A4[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007A4, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007A8[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007A8[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007A8[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007A8[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007A8[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007A8[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007A8[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007A8[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007A8[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007A8, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007AC[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007AC[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007AC[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007AC[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007AC[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007AC[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007AC[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007AC[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007AC[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007AC, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007B0[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007B0[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007B0[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007B0[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007B0[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007B0[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007B0[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007B0[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007B0[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007B0, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007B4[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007B4[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007B4[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007B4[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007B4[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007B4[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007B4[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007B4[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007B4[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007B4, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007B8[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007B8[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007B8[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007B8[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007B8[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007B8[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007B8[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 1 - // .. ==> 0XF80007B8[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007B8[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007B8, 0x00003FFFU ,0x00001200U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF80007BC[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. Speed = 0 - // .. ==> 0XF80007BC[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007BC[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007BC[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007BC[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007BC, 0x00003F01U ,0x00000201U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007C0[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007C0[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007C0[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007C0[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 7 - // .. ==> 0XF80007C0[7:5] = 0x00000007U - // .. ==> MASK : 0x000000E0U VAL : 0x000000E0U - // .. Speed = 0 - // .. ==> 0XF80007C0[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007C0[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007C0[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007C0[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007C0, 0x00003FFFU ,0x000002E0U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF80007C4[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 0 - // .. ==> 0XF80007C4[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007C4[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007C4[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 7 - // .. ==> 0XF80007C4[7:5] = 0x00000007U - // .. ==> MASK : 0x000000E0U VAL : 0x000000E0U - // .. Speed = 0 - // .. ==> 0XF80007C4[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007C4[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007C4[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007C4[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007C4, 0x00003FFFU ,0x000002E1U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007C8[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007C8[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007C8[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007C8[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007C8[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007C8[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007C8[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007C8[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007C8[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007C8, 0x00003FFFU ,0x00000200U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007CC[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007CC[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007CC[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007CC[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007CC[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007CC[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007CC[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007CC[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007CC[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007CC, 0x00003FFFU ,0x00000200U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007D0[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007D0[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007D0[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007D0[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007D0[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007D0[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007D0[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007D0[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007D0[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007D0, 0x00003FFFU ,0x00000200U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007D4[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007D4[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007D4[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007D4[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007D4[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007D4[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007D4[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007D4[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007D4[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007D4, 0x00003FFFU ,0x00000200U), - // .. SDIO0_WP_SEL = 55 - // .. ==> 0XF8000830[5:0] = 0x00000037U - // .. ==> MASK : 0x0000003FU VAL : 0x00000037U - // .. SDIO0_CD_SEL = 47 - // .. ==> 0XF8000830[21:16] = 0x0000002FU - // .. ==> MASK : 0x003F0000U VAL : 0x002F0000U - // .. - EMIT_MASKWRITE(0XF8000830, 0x003F003FU ,0x002F0037U), - // .. FINISH: MIO PROGRAMMING - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_peripherals_init_data_2_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: DDR TERM/IBUF_DISABLE_MODE SETTINGS - // .. IBUF_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B48[7:7] = 0x00000001U - // .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. TERM_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B48[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. - EMIT_MASKWRITE(0XF8000B48, 0x00000180U ,0x00000180U), - // .. IBUF_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B4C[7:7] = 0x00000001U - // .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. TERM_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B4C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. - EMIT_MASKWRITE(0XF8000B4C, 0x00000180U ,0x00000180U), - // .. IBUF_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B50[7:7] = 0x00000001U - // .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. TERM_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B50[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. - EMIT_MASKWRITE(0XF8000B50, 0x00000180U ,0x00000180U), - // .. IBUF_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B54[7:7] = 0x00000001U - // .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. TERM_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B54[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. - EMIT_MASKWRITE(0XF8000B54, 0x00000180U ,0x00000180U), - // .. FINISH: DDR TERM/IBUF_DISABLE_MODE SETTINGS - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // .. START: SRAM/NOR SET OPMODE - // .. FINISH: SRAM/NOR SET OPMODE - // .. START: UART REGISTERS - // .. BDIV = 0x6 - // .. ==> 0XE0001034[7:0] = 0x00000006U - // .. ==> MASK : 0x000000FFU VAL : 0x00000006U - // .. - EMIT_MASKWRITE(0XE0001034, 0x000000FFU ,0x00000006U), - // .. CD = 0x7c - // .. ==> 0XE0001018[15:0] = 0x0000007CU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000007CU - // .. - EMIT_MASKWRITE(0XE0001018, 0x0000FFFFU ,0x0000007CU), - // .. STPBRK = 0x0 - // .. ==> 0XE0001000[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. STTBRK = 0x0 - // .. ==> 0XE0001000[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. RSTTO = 0x0 - // .. ==> 0XE0001000[6:6] = 0x00000000U - // .. ==> MASK : 0x00000040U VAL : 0x00000000U - // .. TXDIS = 0x0 - // .. ==> 0XE0001000[5:5] = 0x00000000U - // .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. TXEN = 0x1 - // .. ==> 0XE0001000[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. RXDIS = 0x0 - // .. ==> 0XE0001000[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. RXEN = 0x1 - // .. ==> 0XE0001000[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. TXRES = 0x1 - // .. ==> 0XE0001000[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. RXRES = 0x1 - // .. ==> 0XE0001000[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. - EMIT_MASKWRITE(0XE0001000, 0x000001FFU ,0x00000017U), - // .. IRMODE = 0x0 - // .. ==> 0XE0001004[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. UCLKEN = 0x0 - // .. ==> 0XE0001004[10:10] = 0x00000000U - // .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. CHMODE = 0x0 - // .. ==> 0XE0001004[9:8] = 0x00000000U - // .. ==> MASK : 0x00000300U VAL : 0x00000000U - // .. NBSTOP = 0x0 - // .. ==> 0XE0001004[7:6] = 0x00000000U - // .. ==> MASK : 0x000000C0U VAL : 0x00000000U - // .. PAR = 0x4 - // .. ==> 0XE0001004[5:3] = 0x00000004U - // .. ==> MASK : 0x00000038U VAL : 0x00000020U - // .. CHRL = 0x0 - // .. ==> 0XE0001004[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. CLKS = 0x0 - // .. ==> 0XE0001004[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XE0001004, 0x00000FFFU ,0x00000020U), - // .. BDIV = 0x6 - // .. ==> 0XE0000034[7:0] = 0x00000006U - // .. ==> MASK : 0x000000FFU VAL : 0x00000006U - // .. - EMIT_MASKWRITE(0XE0000034, 0x000000FFU ,0x00000006U), - // .. CD = 0x7c - // .. ==> 0XE0000018[15:0] = 0x0000007CU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000007CU - // .. - EMIT_MASKWRITE(0XE0000018, 0x0000FFFFU ,0x0000007CU), - // .. STPBRK = 0x0 - // .. ==> 0XE0000000[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. STTBRK = 0x0 - // .. ==> 0XE0000000[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. RSTTO = 0x0 - // .. ==> 0XE0000000[6:6] = 0x00000000U - // .. ==> MASK : 0x00000040U VAL : 0x00000000U - // .. TXDIS = 0x0 - // .. ==> 0XE0000000[5:5] = 0x00000000U - // .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. TXEN = 0x1 - // .. ==> 0XE0000000[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. RXDIS = 0x0 - // .. ==> 0XE0000000[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. RXEN = 0x1 - // .. ==> 0XE0000000[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. TXRES = 0x1 - // .. ==> 0XE0000000[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. RXRES = 0x1 - // .. ==> 0XE0000000[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. - EMIT_MASKWRITE(0XE0000000, 0x000001FFU ,0x00000017U), - // .. IRMODE = 0x0 - // .. ==> 0XE0000004[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. UCLKEN = 0x0 - // .. ==> 0XE0000004[10:10] = 0x00000000U - // .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. CHMODE = 0x0 - // .. ==> 0XE0000004[9:8] = 0x00000000U - // .. ==> MASK : 0x00000300U VAL : 0x00000000U - // .. NBSTOP = 0x0 - // .. ==> 0XE0000004[7:6] = 0x00000000U - // .. ==> MASK : 0x000000C0U VAL : 0x00000000U - // .. PAR = 0x4 - // .. ==> 0XE0000004[5:3] = 0x00000004U - // .. ==> MASK : 0x00000038U VAL : 0x00000020U - // .. CHRL = 0x0 - // .. ==> 0XE0000004[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. CLKS = 0x0 - // .. ==> 0XE0000004[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XE0000004, 0x00000FFFU ,0x00000020U), - // .. FINISH: UART REGISTERS - // .. START: QSPI REGISTERS - // .. Holdb_dr = 1 - // .. ==> 0XE000D000[19:19] = 0x00000001U - // .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. - EMIT_MASKWRITE(0XE000D000, 0x00080000U ,0x00080000U), - // .. FINISH: QSPI REGISTERS - // .. START: PL POWER ON RESET REGISTERS - // .. PCFG_POR_CNT_4K = 0 - // .. ==> 0XF8007000[29:29] = 0x00000000U - // .. ==> MASK : 0x20000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8007000, 0x20000000U ,0x00000000U), - // .. FINISH: PL POWER ON RESET REGISTERS - // .. START: SMC TIMING CALCULATION REGISTER UPDATE - // .. .. START: NAND SET CYCLE - // .. .. FINISH: NAND SET CYCLE - // .. .. START: OPMODE - // .. .. FINISH: OPMODE - // .. .. START: DIRECT COMMAND - // .. .. FINISH: DIRECT COMMAND - // .. .. START: SRAM/NOR CS0 SET CYCLE - // .. .. FINISH: SRAM/NOR CS0 SET CYCLE - // .. .. START: DIRECT COMMAND - // .. .. FINISH: DIRECT COMMAND - // .. .. START: NOR CS0 BASE ADDRESS - // .. .. FINISH: NOR CS0 BASE ADDRESS - // .. .. START: SRAM/NOR CS1 SET CYCLE - // .. .. FINISH: SRAM/NOR CS1 SET CYCLE - // .. .. START: DIRECT COMMAND - // .. .. FINISH: DIRECT COMMAND - // .. .. START: NOR CS1 BASE ADDRESS - // .. .. FINISH: NOR CS1 BASE ADDRESS - // .. .. START: USB RESET - // .. .. .. START: USB0 RESET - // .. .. .. .. START: DIR MODE BANK 0 - // .. .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. .. START: DIR MODE BANK 1 - // .. .. .. .. DIRECTION_1 = 0x4000 - // .. .. .. .. ==> 0XE000A244[21:0] = 0x00004000U - // .. .. .. .. ==> MASK : 0x003FFFFFU VAL : 0x00004000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A244, 0x003FFFFFU ,0x00004000U), - // .. .. .. .. FINISH: DIR MODE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. MASK_1_LSW = 0xbfff - // .. .. .. .. ==> 0XE000A008[31:16] = 0x0000BFFFU - // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xBFFF0000U - // .. .. .. .. DATA_1_LSW = 0x4000 - // .. .. .. .. ==> 0XE000A008[15:0] = 0x00004000U - // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00004000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A008, 0xFFFFFFFFU ,0xBFFF4000U), - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. .. .. START: OUTPUT ENABLE BANK 1 - // .. .. .. .. OP_ENABLE_1 = 0x4000 - // .. .. .. .. ==> 0XE000A248[21:0] = 0x00004000U - // .. .. .. .. ==> MASK : 0x003FFFFFU VAL : 0x00004000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A248, 0x003FFFFFU ,0x00004000U), - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. MASK_1_LSW = 0xbfff - // .. .. .. .. ==> 0XE000A008[31:16] = 0x0000BFFFU - // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xBFFF0000U - // .. .. .. .. DATA_1_LSW = 0x0 - // .. .. .. .. ==> 0XE000A008[15:0] = 0x00000000U - // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A008, 0xFFFFFFFFU ,0xBFFF0000U), - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. MASK_1_LSW = 0xbfff - // .. .. .. .. ==> 0XE000A008[31:16] = 0x0000BFFFU - // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xBFFF0000U - // .. .. .. .. DATA_1_LSW = 0x4000 - // .. .. .. .. ==> 0XE000A008[15:0] = 0x00004000U - // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00004000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A008, 0xFFFFFFFFU ,0xBFFF4000U), - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: USB0 RESET - // .. .. .. START: USB1 RESET - // .. .. .. .. START: DIR MODE BANK 0 - // .. .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. .. START: DIR MODE BANK 1 - // .. .. .. .. FINISH: DIR MODE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. .. .. START: OUTPUT ENABLE BANK 1 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: USB1 RESET - // .. .. FINISH: USB RESET - // .. .. START: ENET RESET - // .. .. .. START: ENET0 RESET - // .. .. .. .. START: DIR MODE BANK 0 - // .. .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. .. START: DIR MODE BANK 1 - // .. .. .. .. FINISH: DIR MODE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. .. .. START: OUTPUT ENABLE BANK 1 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: ENET0 RESET - // .. .. .. START: ENET1 RESET - // .. .. .. .. START: DIR MODE BANK 0 - // .. .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. .. START: DIR MODE BANK 1 - // .. .. .. .. FINISH: DIR MODE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. .. .. START: OUTPUT ENABLE BANK 1 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: ENET1 RESET - // .. .. FINISH: ENET RESET - // .. .. START: I2C RESET - // .. .. .. START: I2C0 RESET - // .. .. .. .. START: DIR MODE GPIO BANK0 - // .. .. .. .. FINISH: DIR MODE GPIO BANK0 - // .. .. .. .. START: DIR MODE GPIO BANK1 - // .. .. .. .. FINISH: DIR MODE GPIO BANK1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE - // .. .. .. .. FINISH: OUTPUT ENABLE - // .. .. .. .. START: OUTPUT ENABLE - // .. .. .. .. FINISH: OUTPUT ENABLE - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: I2C0 RESET - // .. .. .. START: I2C1 RESET - // .. .. .. .. START: DIR MODE GPIO BANK0 - // .. .. .. .. FINISH: DIR MODE GPIO BANK0 - // .. .. .. .. START: DIR MODE GPIO BANK1 - // .. .. .. .. FINISH: DIR MODE GPIO BANK1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE - // .. .. .. .. FINISH: OUTPUT ENABLE - // .. .. .. .. START: OUTPUT ENABLE - // .. .. .. .. FINISH: OUTPUT ENABLE - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: I2C1 RESET - // .. .. FINISH: I2C RESET - // .. .. START: NOR CHIP SELECT - // .. .. .. START: DIR MODE BANK 0 - // .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. FINISH: NOR CHIP SELECT - // .. FINISH: SMC TIMING CALCULATION REGISTER UPDATE - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_post_config_2_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: ENABLING LEVEL SHIFTER - // .. USER_INP_ICT_EN_0 = 3 - // .. ==> 0XF8000900[1:0] = 0x00000003U - // .. ==> MASK : 0x00000003U VAL : 0x00000003U - // .. USER_INP_ICT_EN_1 = 3 - // .. ==> 0XF8000900[3:2] = 0x00000003U - // .. ==> MASK : 0x0000000CU VAL : 0x0000000CU - // .. - EMIT_MASKWRITE(0XF8000900, 0x0000000FU ,0x0000000FU), - // .. FINISH: ENABLING LEVEL SHIFTER - // .. START: FPGA RESETS TO 0 - // .. reserved_3 = 0 - // .. ==> 0XF8000240[31:25] = 0x00000000U - // .. ==> MASK : 0xFE000000U VAL : 0x00000000U - // .. FPGA_ACP_RST = 0 - // .. ==> 0XF8000240[24:24] = 0x00000000U - // .. ==> MASK : 0x01000000U VAL : 0x00000000U - // .. FPGA_AXDS3_RST = 0 - // .. ==> 0XF8000240[23:23] = 0x00000000U - // .. ==> MASK : 0x00800000U VAL : 0x00000000U - // .. FPGA_AXDS2_RST = 0 - // .. ==> 0XF8000240[22:22] = 0x00000000U - // .. ==> MASK : 0x00400000U VAL : 0x00000000U - // .. FPGA_AXDS1_RST = 0 - // .. ==> 0XF8000240[21:21] = 0x00000000U - // .. ==> MASK : 0x00200000U VAL : 0x00000000U - // .. FPGA_AXDS0_RST = 0 - // .. ==> 0XF8000240[20:20] = 0x00000000U - // .. ==> MASK : 0x00100000U VAL : 0x00000000U - // .. reserved_2 = 0 - // .. ==> 0XF8000240[19:18] = 0x00000000U - // .. ==> MASK : 0x000C0000U VAL : 0x00000000U - // .. FSSW1_FPGA_RST = 0 - // .. ==> 0XF8000240[17:17] = 0x00000000U - // .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. FSSW0_FPGA_RST = 0 - // .. ==> 0XF8000240[16:16] = 0x00000000U - // .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. reserved_1 = 0 - // .. ==> 0XF8000240[15:14] = 0x00000000U - // .. ==> MASK : 0x0000C000U VAL : 0x00000000U - // .. FPGA_FMSW1_RST = 0 - // .. ==> 0XF8000240[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. FPGA_FMSW0_RST = 0 - // .. ==> 0XF8000240[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. FPGA_DMA3_RST = 0 - // .. ==> 0XF8000240[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. FPGA_DMA2_RST = 0 - // .. ==> 0XF8000240[10:10] = 0x00000000U - // .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. FPGA_DMA1_RST = 0 - // .. ==> 0XF8000240[9:9] = 0x00000000U - // .. ==> MASK : 0x00000200U VAL : 0x00000000U - // .. FPGA_DMA0_RST = 0 - // .. ==> 0XF8000240[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. reserved = 0 - // .. ==> 0XF8000240[7:4] = 0x00000000U - // .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. FPGA3_OUT_RST = 0 - // .. ==> 0XF8000240[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. FPGA2_OUT_RST = 0 - // .. ==> 0XF8000240[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. FPGA1_OUT_RST = 0 - // .. ==> 0XF8000240[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. FPGA0_OUT_RST = 0 - // .. ==> 0XF8000240[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000240, 0xFFFFFFFFU ,0x00000000U), - // .. FINISH: FPGA RESETS TO 0 - // .. START: AFI REGISTERS - // .. .. START: AFI0 REGISTERS - // .. .. FINISH: AFI0 REGISTERS - // .. .. START: AFI1 REGISTERS - // .. .. FINISH: AFI1 REGISTERS - // .. .. START: AFI2 REGISTERS - // .. .. FINISH: AFI2 REGISTERS - // .. .. START: AFI3 REGISTERS - // .. .. FINISH: AFI3 REGISTERS - // .. FINISH: AFI REGISTERS - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_debug_2_0[] = { - // START: top - // .. START: CROSS TRIGGER CONFIGURATIONS - // .. .. START: UNLOCKING CTI REGISTERS - // .. .. KEY = 0XC5ACCE55 - // .. .. ==> 0XF8898FB0[31:0] = 0xC5ACCE55U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U - // .. .. - EMIT_WRITE(0XF8898FB0, 0xC5ACCE55U), - // .. .. KEY = 0XC5ACCE55 - // .. .. ==> 0XF8899FB0[31:0] = 0xC5ACCE55U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U - // .. .. - EMIT_WRITE(0XF8899FB0, 0xC5ACCE55U), - // .. .. KEY = 0XC5ACCE55 - // .. .. ==> 0XF8809FB0[31:0] = 0xC5ACCE55U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U - // .. .. - EMIT_WRITE(0XF8809FB0, 0xC5ACCE55U), - // .. .. FINISH: UNLOCKING CTI REGISTERS - // .. .. START: ENABLING CTI MODULES AND CHANNELS - // .. .. FINISH: ENABLING CTI MODULES AND CHANNELS - // .. .. START: MAPPING CPU0, CPU1 AND FTM EVENTS TO CTM CHANNELS - // .. .. FINISH: MAPPING CPU0, CPU1 AND FTM EVENTS TO CTM CHANNELS - // .. FINISH: CROSS TRIGGER CONFIGURATIONS - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_pll_init_data_1_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: PLL SLCR REGISTERS - // .. .. START: ARM PLL INIT - // .. .. PLL_RES = 0xc - // .. .. ==> 0XF8000110[7:4] = 0x0000000CU - // .. .. ==> MASK : 0x000000F0U VAL : 0x000000C0U - // .. .. PLL_CP = 0x2 - // .. .. ==> 0XF8000110[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. LOCK_CNT = 0x177 - // .. .. ==> 0XF8000110[21:12] = 0x00000177U - // .. .. ==> MASK : 0x003FF000U VAL : 0x00177000U - // .. .. - EMIT_MASKWRITE(0XF8000110, 0x003FFFF0U ,0x001772C0U), - // .. .. .. START: UPDATE FB_DIV - // .. .. .. PLL_FDIV = 0x1a - // .. .. .. ==> 0XF8000100[18:12] = 0x0000001AU - // .. .. .. ==> MASK : 0x0007F000U VAL : 0x0001A000U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x0007F000U ,0x0001A000U), - // .. .. .. FINISH: UPDATE FB_DIV - // .. .. .. START: BY PASS PLL - // .. .. .. PLL_BYPASS_FORCE = 1 - // .. .. .. ==> 0XF8000100[4:4] = 0x00000001U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x00000010U ,0x00000010U), - // .. .. .. FINISH: BY PASS PLL - // .. .. .. START: ASSERT RESET - // .. .. .. PLL_RESET = 1 - // .. .. .. ==> 0XF8000100[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x00000001U ,0x00000001U), - // .. .. .. FINISH: ASSERT RESET - // .. .. .. START: DEASSERT RESET - // .. .. .. PLL_RESET = 0 - // .. .. .. ==> 0XF8000100[0:0] = 0x00000000U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x00000001U ,0x00000000U), - // .. .. .. FINISH: DEASSERT RESET - // .. .. .. START: CHECK PLL STATUS - // .. .. .. ARM_PLL_LOCK = 1 - // .. .. .. ==> 0XF800010C[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. - EMIT_MASKPOLL(0XF800010C, 0x00000001U), - // .. .. .. FINISH: CHECK PLL STATUS - // .. .. .. START: REMOVE PLL BY PASS - // .. .. .. PLL_BYPASS_FORCE = 0 - // .. .. .. ==> 0XF8000100[4:4] = 0x00000000U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000100, 0x00000010U ,0x00000000U), - // .. .. .. FINISH: REMOVE PLL BY PASS - // .. .. .. SRCSEL = 0x0 - // .. .. .. ==> 0XF8000120[5:4] = 0x00000000U - // .. .. .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. .. .. DIVISOR = 0x2 - // .. .. .. ==> 0XF8000120[13:8] = 0x00000002U - // .. .. .. ==> MASK : 0x00003F00U VAL : 0x00000200U - // .. .. .. CPU_6OR4XCLKACT = 0x1 - // .. .. .. ==> 0XF8000120[24:24] = 0x00000001U - // .. .. .. ==> MASK : 0x01000000U VAL : 0x01000000U - // .. .. .. CPU_3OR2XCLKACT = 0x1 - // .. .. .. ==> 0XF8000120[25:25] = 0x00000001U - // .. .. .. ==> MASK : 0x02000000U VAL : 0x02000000U - // .. .. .. CPU_2XCLKACT = 0x1 - // .. .. .. ==> 0XF8000120[26:26] = 0x00000001U - // .. .. .. ==> MASK : 0x04000000U VAL : 0x04000000U - // .. .. .. CPU_1XCLKACT = 0x1 - // .. .. .. ==> 0XF8000120[27:27] = 0x00000001U - // .. .. .. ==> MASK : 0x08000000U VAL : 0x08000000U - // .. .. .. CPU_PERI_CLKACT = 0x1 - // .. .. .. ==> 0XF8000120[28:28] = 0x00000001U - // .. .. .. ==> MASK : 0x10000000U VAL : 0x10000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000120, 0x1F003F30U ,0x1F000200U), - // .. .. FINISH: ARM PLL INIT - // .. .. START: DDR PLL INIT - // .. .. PLL_RES = 0xc - // .. .. ==> 0XF8000114[7:4] = 0x0000000CU - // .. .. ==> MASK : 0x000000F0U VAL : 0x000000C0U - // .. .. PLL_CP = 0x2 - // .. .. ==> 0XF8000114[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. LOCK_CNT = 0x1db - // .. .. ==> 0XF8000114[21:12] = 0x000001DBU - // .. .. ==> MASK : 0x003FF000U VAL : 0x001DB000U - // .. .. - EMIT_MASKWRITE(0XF8000114, 0x003FFFF0U ,0x001DB2C0U), - // .. .. .. START: UPDATE FB_DIV - // .. .. .. PLL_FDIV = 0x15 - // .. .. .. ==> 0XF8000104[18:12] = 0x00000015U - // .. .. .. ==> MASK : 0x0007F000U VAL : 0x00015000U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x0007F000U ,0x00015000U), - // .. .. .. FINISH: UPDATE FB_DIV - // .. .. .. START: BY PASS PLL - // .. .. .. PLL_BYPASS_FORCE = 1 - // .. .. .. ==> 0XF8000104[4:4] = 0x00000001U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x00000010U ,0x00000010U), - // .. .. .. FINISH: BY PASS PLL - // .. .. .. START: ASSERT RESET - // .. .. .. PLL_RESET = 1 - // .. .. .. ==> 0XF8000104[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x00000001U ,0x00000001U), - // .. .. .. FINISH: ASSERT RESET - // .. .. .. START: DEASSERT RESET - // .. .. .. PLL_RESET = 0 - // .. .. .. ==> 0XF8000104[0:0] = 0x00000000U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x00000001U ,0x00000000U), - // .. .. .. FINISH: DEASSERT RESET - // .. .. .. START: CHECK PLL STATUS - // .. .. .. DDR_PLL_LOCK = 1 - // .. .. .. ==> 0XF800010C[1:1] = 0x00000001U - // .. .. .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. .. .. - EMIT_MASKPOLL(0XF800010C, 0x00000002U), - // .. .. .. FINISH: CHECK PLL STATUS - // .. .. .. START: REMOVE PLL BY PASS - // .. .. .. PLL_BYPASS_FORCE = 0 - // .. .. .. ==> 0XF8000104[4:4] = 0x00000000U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000104, 0x00000010U ,0x00000000U), - // .. .. .. FINISH: REMOVE PLL BY PASS - // .. .. .. DDR_3XCLKACT = 0x1 - // .. .. .. ==> 0XF8000124[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. DDR_2XCLKACT = 0x1 - // .. .. .. ==> 0XF8000124[1:1] = 0x00000001U - // .. .. .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. .. .. DDR_3XCLK_DIVISOR = 0x2 - // .. .. .. ==> 0XF8000124[25:20] = 0x00000002U - // .. .. .. ==> MASK : 0x03F00000U VAL : 0x00200000U - // .. .. .. DDR_2XCLK_DIVISOR = 0x3 - // .. .. .. ==> 0XF8000124[31:26] = 0x00000003U - // .. .. .. ==> MASK : 0xFC000000U VAL : 0x0C000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000124, 0xFFF00003U ,0x0C200003U), - // .. .. FINISH: DDR PLL INIT - // .. .. START: IO PLL INIT - // .. .. PLL_RES = 0xc - // .. .. ==> 0XF8000118[7:4] = 0x0000000CU - // .. .. ==> MASK : 0x000000F0U VAL : 0x000000C0U - // .. .. PLL_CP = 0x2 - // .. .. ==> 0XF8000118[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. LOCK_CNT = 0x1f4 - // .. .. ==> 0XF8000118[21:12] = 0x000001F4U - // .. .. ==> MASK : 0x003FF000U VAL : 0x001F4000U - // .. .. - EMIT_MASKWRITE(0XF8000118, 0x003FFFF0U ,0x001F42C0U), - // .. .. .. START: UPDATE FB_DIV - // .. .. .. PLL_FDIV = 0x14 - // .. .. .. ==> 0XF8000108[18:12] = 0x00000014U - // .. .. .. ==> MASK : 0x0007F000U VAL : 0x00014000U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x0007F000U ,0x00014000U), - // .. .. .. FINISH: UPDATE FB_DIV - // .. .. .. START: BY PASS PLL - // .. .. .. PLL_BYPASS_FORCE = 1 - // .. .. .. ==> 0XF8000108[4:4] = 0x00000001U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x00000010U ,0x00000010U), - // .. .. .. FINISH: BY PASS PLL - // .. .. .. START: ASSERT RESET - // .. .. .. PLL_RESET = 1 - // .. .. .. ==> 0XF8000108[0:0] = 0x00000001U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x00000001U ,0x00000001U), - // .. .. .. FINISH: ASSERT RESET - // .. .. .. START: DEASSERT RESET - // .. .. .. PLL_RESET = 0 - // .. .. .. ==> 0XF8000108[0:0] = 0x00000000U - // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x00000001U ,0x00000000U), - // .. .. .. FINISH: DEASSERT RESET - // .. .. .. START: CHECK PLL STATUS - // .. .. .. IO_PLL_LOCK = 1 - // .. .. .. ==> 0XF800010C[2:2] = 0x00000001U - // .. .. .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. .. .. - EMIT_MASKPOLL(0XF800010C, 0x00000004U), - // .. .. .. FINISH: CHECK PLL STATUS - // .. .. .. START: REMOVE PLL BY PASS - // .. .. .. PLL_BYPASS_FORCE = 0 - // .. .. .. ==> 0XF8000108[4:4] = 0x00000000U - // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. .. - EMIT_MASKWRITE(0XF8000108, 0x00000010U ,0x00000000U), - // .. .. .. FINISH: REMOVE PLL BY PASS - // .. .. FINISH: IO PLL INIT - // .. FINISH: PLL SLCR REGISTERS - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_clock_init_data_1_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: CLOCK CONTROL SLCR REGISTERS - // .. CLKACT = 0x1 - // .. ==> 0XF8000128[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. DIVISOR0 = 0x34 - // .. ==> 0XF8000128[13:8] = 0x00000034U - // .. ==> MASK : 0x00003F00U VAL : 0x00003400U - // .. DIVISOR1 = 0x2 - // .. ==> 0XF8000128[25:20] = 0x00000002U - // .. ==> MASK : 0x03F00000U VAL : 0x00200000U - // .. - EMIT_MASKWRITE(0XF8000128, 0x03F03F01U ,0x00203401U), - // .. CLKACT = 0x1 - // .. ==> 0XF8000138[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. SRCSEL = 0x0 - // .. ==> 0XF8000138[4:4] = 0x00000000U - // .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000138, 0x00000011U ,0x00000001U), - // .. CLKACT = 0x1 - // .. ==> 0XF8000140[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. SRCSEL = 0x0 - // .. ==> 0XF8000140[6:4] = 0x00000000U - // .. ==> MASK : 0x00000070U VAL : 0x00000000U - // .. DIVISOR = 0x8 - // .. ==> 0XF8000140[13:8] = 0x00000008U - // .. ==> MASK : 0x00003F00U VAL : 0x00000800U - // .. DIVISOR1 = 0x1 - // .. ==> 0XF8000140[25:20] = 0x00000001U - // .. ==> MASK : 0x03F00000U VAL : 0x00100000U - // .. - EMIT_MASKWRITE(0XF8000140, 0x03F03F71U ,0x00100801U), - // .. CLKACT = 0x1 - // .. ==> 0XF800014C[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. SRCSEL = 0x0 - // .. ==> 0XF800014C[5:4] = 0x00000000U - // .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. DIVISOR = 0x5 - // .. ==> 0XF800014C[13:8] = 0x00000005U - // .. ==> MASK : 0x00003F00U VAL : 0x00000500U - // .. - EMIT_MASKWRITE(0XF800014C, 0x00003F31U ,0x00000501U), - // .. CLKACT0 = 0x1 - // .. ==> 0XF8000150[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. CLKACT1 = 0x0 - // .. ==> 0XF8000150[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. SRCSEL = 0x0 - // .. ==> 0XF8000150[5:4] = 0x00000000U - // .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. DIVISOR = 0x14 - // .. ==> 0XF8000150[13:8] = 0x00000014U - // .. ==> MASK : 0x00003F00U VAL : 0x00001400U - // .. - EMIT_MASKWRITE(0XF8000150, 0x00003F33U ,0x00001401U), - // .. CLKACT0 = 0x1 - // .. ==> 0XF8000154[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. CLKACT1 = 0x1 - // .. ==> 0XF8000154[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. SRCSEL = 0x0 - // .. ==> 0XF8000154[5:4] = 0x00000000U - // .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. DIVISOR = 0xa - // .. ==> 0XF8000154[13:8] = 0x0000000AU - // .. ==> MASK : 0x00003F00U VAL : 0x00000A00U - // .. - EMIT_MASKWRITE(0XF8000154, 0x00003F33U ,0x00000A03U), - // .. .. START: TRACE CLOCK - // .. .. FINISH: TRACE CLOCK - // .. .. CLKACT = 0x1 - // .. .. ==> 0XF8000168[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. SRCSEL = 0x0 - // .. .. ==> 0XF8000168[5:4] = 0x00000000U - // .. .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. .. DIVISOR = 0x5 - // .. .. ==> 0XF8000168[13:8] = 0x00000005U - // .. .. ==> MASK : 0x00003F00U VAL : 0x00000500U - // .. .. - EMIT_MASKWRITE(0XF8000168, 0x00003F31U ,0x00000501U), - // .. .. SRCSEL = 0x0 - // .. .. ==> 0XF8000170[5:4] = 0x00000000U - // .. .. ==> MASK : 0x00000030U VAL : 0x00000000U - // .. .. DIVISOR0 = 0x5 - // .. .. ==> 0XF8000170[13:8] = 0x00000005U - // .. .. ==> MASK : 0x00003F00U VAL : 0x00000500U - // .. .. DIVISOR1 = 0x2 - // .. .. ==> 0XF8000170[25:20] = 0x00000002U - // .. .. ==> MASK : 0x03F00000U VAL : 0x00200000U - // .. .. - EMIT_MASKWRITE(0XF8000170, 0x03F03F30U ,0x00200500U), - // .. .. CLK_621_TRUE = 0x1 - // .. .. ==> 0XF80001C4[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. - EMIT_MASKWRITE(0XF80001C4, 0x00000001U ,0x00000001U), - // .. .. DMA_CPU_2XCLKACT = 0x1 - // .. .. ==> 0XF800012C[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. USB0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[2:2] = 0x00000001U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. .. USB1_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[3:3] = 0x00000001U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000008U - // .. .. GEM0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[6:6] = 0x00000001U - // .. .. ==> MASK : 0x00000040U VAL : 0x00000040U - // .. .. GEM1_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[7:7] = 0x00000000U - // .. .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. .. SDI0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[10:10] = 0x00000001U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000400U - // .. .. SDI1_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. SPI0_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[14:14] = 0x00000000U - // .. .. ==> MASK : 0x00004000U VAL : 0x00000000U - // .. .. SPI1_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[15:15] = 0x00000000U - // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U - // .. .. CAN0_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. CAN1_CPU_1XCLKACT = 0x0 - // .. .. ==> 0XF800012C[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. I2C0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[18:18] = 0x00000001U - // .. .. ==> MASK : 0x00040000U VAL : 0x00040000U - // .. .. I2C1_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[19:19] = 0x00000001U - // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. .. UART0_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[20:20] = 0x00000001U - // .. .. ==> MASK : 0x00100000U VAL : 0x00100000U - // .. .. UART1_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[21:21] = 0x00000001U - // .. .. ==> MASK : 0x00200000U VAL : 0x00200000U - // .. .. GPIO_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[22:22] = 0x00000001U - // .. .. ==> MASK : 0x00400000U VAL : 0x00400000U - // .. .. LQSPI_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[23:23] = 0x00000001U - // .. .. ==> MASK : 0x00800000U VAL : 0x00800000U - // .. .. SMC_CPU_1XCLKACT = 0x1 - // .. .. ==> 0XF800012C[24:24] = 0x00000001U - // .. .. ==> MASK : 0x01000000U VAL : 0x01000000U - // .. .. - EMIT_MASKWRITE(0XF800012C, 0x01FFCCCDU ,0x01FC044DU), - // .. FINISH: CLOCK CONTROL SLCR REGISTERS - // .. START: THIS SHOULD BE BLANK - // .. FINISH: THIS SHOULD BE BLANK - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_ddr_init_data_1_0[] = { - // START: top - // .. START: DDR INITIALIZATION - // .. .. START: LOCK DDR - // .. .. reg_ddrc_soft_rstb = 0 - // .. .. ==> 0XF8006000[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_powerdown_en = 0x0 - // .. .. ==> 0XF8006000[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_ddrc_data_bus_width = 0x0 - // .. .. ==> 0XF8006000[3:2] = 0x00000000U - // .. .. ==> MASK : 0x0000000CU VAL : 0x00000000U - // .. .. reg_ddrc_burst8_refresh = 0x0 - // .. .. ==> 0XF8006000[6:4] = 0x00000000U - // .. .. ==> MASK : 0x00000070U VAL : 0x00000000U - // .. .. reg_ddrc_rdwr_idle_gap = 0x1 - // .. .. ==> 0XF8006000[13:7] = 0x00000001U - // .. .. ==> MASK : 0x00003F80U VAL : 0x00000080U - // .. .. reg_ddrc_dis_rd_bypass = 0x0 - // .. .. ==> 0XF8006000[14:14] = 0x00000000U - // .. .. ==> MASK : 0x00004000U VAL : 0x00000000U - // .. .. reg_ddrc_dis_act_bypass = 0x0 - // .. .. ==> 0XF8006000[15:15] = 0x00000000U - // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U - // .. .. reg_ddrc_dis_auto_refresh = 0x0 - // .. .. ==> 0XF8006000[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006000, 0x0001FFFFU ,0x00000080U), - // .. .. FINISH: LOCK DDR - // .. .. reg_ddrc_t_rfc_nom_x32 = 0x7f - // .. .. ==> 0XF8006004[11:0] = 0x0000007FU - // .. .. ==> MASK : 0x00000FFFU VAL : 0x0000007FU - // .. .. reg_ddrc_active_ranks = 0x1 - // .. .. ==> 0XF8006004[13:12] = 0x00000001U - // .. .. ==> MASK : 0x00003000U VAL : 0x00001000U - // .. .. reg_ddrc_addrmap_cs_bit0 = 0x0 - // .. .. ==> 0XF8006004[18:14] = 0x00000000U - // .. .. ==> MASK : 0x0007C000U VAL : 0x00000000U - // .. .. reg_ddrc_wr_odt_block = 0x1 - // .. .. ==> 0XF8006004[20:19] = 0x00000001U - // .. .. ==> MASK : 0x00180000U VAL : 0x00080000U - // .. .. reg_ddrc_diff_rank_rd_2cycle_gap = 0x0 - // .. .. ==> 0XF8006004[21:21] = 0x00000000U - // .. .. ==> MASK : 0x00200000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_cs_bit1 = 0x0 - // .. .. ==> 0XF8006004[26:22] = 0x00000000U - // .. .. ==> MASK : 0x07C00000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_open_bank = 0x0 - // .. .. ==> 0XF8006004[27:27] = 0x00000000U - // .. .. ==> MASK : 0x08000000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_4bank_ram = 0x0 - // .. .. ==> 0XF8006004[28:28] = 0x00000000U - // .. .. ==> MASK : 0x10000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006004, 0x1FFFFFFFU ,0x0008107FU), - // .. .. reg_ddrc_hpr_min_non_critical_x32 = 0xf - // .. .. ==> 0XF8006008[10:0] = 0x0000000FU - // .. .. ==> MASK : 0x000007FFU VAL : 0x0000000FU - // .. .. reg_ddrc_hpr_max_starve_x32 = 0xf - // .. .. ==> 0XF8006008[21:11] = 0x0000000FU - // .. .. ==> MASK : 0x003FF800U VAL : 0x00007800U - // .. .. reg_ddrc_hpr_xact_run_length = 0xf - // .. .. ==> 0XF8006008[25:22] = 0x0000000FU - // .. .. ==> MASK : 0x03C00000U VAL : 0x03C00000U - // .. .. - EMIT_MASKWRITE(0XF8006008, 0x03FFFFFFU ,0x03C0780FU), - // .. .. reg_ddrc_lpr_min_non_critical_x32 = 0x1 - // .. .. ==> 0XF800600C[10:0] = 0x00000001U - // .. .. ==> MASK : 0x000007FFU VAL : 0x00000001U - // .. .. reg_ddrc_lpr_max_starve_x32 = 0x2 - // .. .. ==> 0XF800600C[21:11] = 0x00000002U - // .. .. ==> MASK : 0x003FF800U VAL : 0x00001000U - // .. .. reg_ddrc_lpr_xact_run_length = 0x8 - // .. .. ==> 0XF800600C[25:22] = 0x00000008U - // .. .. ==> MASK : 0x03C00000U VAL : 0x02000000U - // .. .. - EMIT_MASKWRITE(0XF800600C, 0x03FFFFFFU ,0x02001001U), - // .. .. reg_ddrc_w_min_non_critical_x32 = 0x1 - // .. .. ==> 0XF8006010[10:0] = 0x00000001U - // .. .. ==> MASK : 0x000007FFU VAL : 0x00000001U - // .. .. reg_ddrc_w_xact_run_length = 0x8 - // .. .. ==> 0XF8006010[14:11] = 0x00000008U - // .. .. ==> MASK : 0x00007800U VAL : 0x00004000U - // .. .. reg_ddrc_w_max_starve_x32 = 0x2 - // .. .. ==> 0XF8006010[25:15] = 0x00000002U - // .. .. ==> MASK : 0x03FF8000U VAL : 0x00010000U - // .. .. - EMIT_MASKWRITE(0XF8006010, 0x03FFFFFFU ,0x00014001U), - // .. .. reg_ddrc_t_rc = 0x1a - // .. .. ==> 0XF8006014[5:0] = 0x0000001AU - // .. .. ==> MASK : 0x0000003FU VAL : 0x0000001AU - // .. .. reg_ddrc_t_rfc_min = 0x54 - // .. .. ==> 0XF8006014[13:6] = 0x00000054U - // .. .. ==> MASK : 0x00003FC0U VAL : 0x00001500U - // .. .. reg_ddrc_post_selfref_gap_x32 = 0x10 - // .. .. ==> 0XF8006014[20:14] = 0x00000010U - // .. .. ==> MASK : 0x001FC000U VAL : 0x00040000U - // .. .. - EMIT_MASKWRITE(0XF8006014, 0x001FFFFFU ,0x0004151AU), - // .. .. reg_ddrc_wr2pre = 0x12 - // .. .. ==> 0XF8006018[4:0] = 0x00000012U - // .. .. ==> MASK : 0x0000001FU VAL : 0x00000012U - // .. .. reg_ddrc_powerdown_to_x32 = 0x6 - // .. .. ==> 0XF8006018[9:5] = 0x00000006U - // .. .. ==> MASK : 0x000003E0U VAL : 0x000000C0U - // .. .. reg_ddrc_t_faw = 0x15 - // .. .. ==> 0XF8006018[15:10] = 0x00000015U - // .. .. ==> MASK : 0x0000FC00U VAL : 0x00005400U - // .. .. reg_ddrc_t_ras_max = 0x23 - // .. .. ==> 0XF8006018[21:16] = 0x00000023U - // .. .. ==> MASK : 0x003F0000U VAL : 0x00230000U - // .. .. reg_ddrc_t_ras_min = 0x13 - // .. .. ==> 0XF8006018[26:22] = 0x00000013U - // .. .. ==> MASK : 0x07C00000U VAL : 0x04C00000U - // .. .. reg_ddrc_t_cke = 0x4 - // .. .. ==> 0XF8006018[31:28] = 0x00000004U - // .. .. ==> MASK : 0xF0000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF8006018, 0xF7FFFFFFU ,0x44E354D2U), - // .. .. reg_ddrc_write_latency = 0x5 - // .. .. ==> 0XF800601C[4:0] = 0x00000005U - // .. .. ==> MASK : 0x0000001FU VAL : 0x00000005U - // .. .. reg_ddrc_rd2wr = 0x7 - // .. .. ==> 0XF800601C[9:5] = 0x00000007U - // .. .. ==> MASK : 0x000003E0U VAL : 0x000000E0U - // .. .. reg_ddrc_wr2rd = 0xe - // .. .. ==> 0XF800601C[14:10] = 0x0000000EU - // .. .. ==> MASK : 0x00007C00U VAL : 0x00003800U - // .. .. reg_ddrc_t_xp = 0x4 - // .. .. ==> 0XF800601C[19:15] = 0x00000004U - // .. .. ==> MASK : 0x000F8000U VAL : 0x00020000U - // .. .. reg_ddrc_pad_pd = 0x0 - // .. .. ==> 0XF800601C[22:20] = 0x00000000U - // .. .. ==> MASK : 0x00700000U VAL : 0x00000000U - // .. .. reg_ddrc_rd2pre = 0x4 - // .. .. ==> 0XF800601C[27:23] = 0x00000004U - // .. .. ==> MASK : 0x0F800000U VAL : 0x02000000U - // .. .. reg_ddrc_t_rcd = 0x7 - // .. .. ==> 0XF800601C[31:28] = 0x00000007U - // .. .. ==> MASK : 0xF0000000U VAL : 0x70000000U - // .. .. - EMIT_MASKWRITE(0XF800601C, 0xFFFFFFFFU ,0x720238E5U), - // .. .. reg_ddrc_t_ccd = 0x4 - // .. .. ==> 0XF8006020[4:2] = 0x00000004U - // .. .. ==> MASK : 0x0000001CU VAL : 0x00000010U - // .. .. reg_ddrc_t_rrd = 0x6 - // .. .. ==> 0XF8006020[7:5] = 0x00000006U - // .. .. ==> MASK : 0x000000E0U VAL : 0x000000C0U - // .. .. reg_ddrc_refresh_margin = 0x2 - // .. .. ==> 0XF8006020[11:8] = 0x00000002U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U - // .. .. reg_ddrc_t_rp = 0x7 - // .. .. ==> 0XF8006020[15:12] = 0x00000007U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00007000U - // .. .. reg_ddrc_refresh_to_x32 = 0x8 - // .. .. ==> 0XF8006020[20:16] = 0x00000008U - // .. .. ==> MASK : 0x001F0000U VAL : 0x00080000U - // .. .. reg_ddrc_sdram = 0x1 - // .. .. ==> 0XF8006020[21:21] = 0x00000001U - // .. .. ==> MASK : 0x00200000U VAL : 0x00200000U - // .. .. reg_ddrc_mobile = 0x0 - // .. .. ==> 0XF8006020[22:22] = 0x00000000U - // .. .. ==> MASK : 0x00400000U VAL : 0x00000000U - // .. .. reg_ddrc_clock_stop_en = 0x0 - // .. .. ==> 0XF8006020[23:23] = 0x00000000U - // .. .. ==> MASK : 0x00800000U VAL : 0x00000000U - // .. .. reg_ddrc_read_latency = 0x7 - // .. .. ==> 0XF8006020[28:24] = 0x00000007U - // .. .. ==> MASK : 0x1F000000U VAL : 0x07000000U - // .. .. reg_phy_mode_ddr1_ddr2 = 0x1 - // .. .. ==> 0XF8006020[29:29] = 0x00000001U - // .. .. ==> MASK : 0x20000000U VAL : 0x20000000U - // .. .. reg_ddrc_dis_pad_pd = 0x0 - // .. .. ==> 0XF8006020[30:30] = 0x00000000U - // .. .. ==> MASK : 0x40000000U VAL : 0x00000000U - // .. .. reg_ddrc_loopback = 0x0 - // .. .. ==> 0XF8006020[31:31] = 0x00000000U - // .. .. ==> MASK : 0x80000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006020, 0xFFFFFFFCU ,0x272872D0U), - // .. .. reg_ddrc_en_2t_timing_mode = 0x0 - // .. .. ==> 0XF8006024[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_prefer_write = 0x0 - // .. .. ==> 0XF8006024[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_ddrc_max_rank_rd = 0xf - // .. .. ==> 0XF8006024[5:2] = 0x0000000FU - // .. .. ==> MASK : 0x0000003CU VAL : 0x0000003CU - // .. .. reg_ddrc_mr_wr = 0x0 - // .. .. ==> 0XF8006024[6:6] = 0x00000000U - // .. .. ==> MASK : 0x00000040U VAL : 0x00000000U - // .. .. reg_ddrc_mr_addr = 0x0 - // .. .. ==> 0XF8006024[8:7] = 0x00000000U - // .. .. ==> MASK : 0x00000180U VAL : 0x00000000U - // .. .. reg_ddrc_mr_data = 0x0 - // .. .. ==> 0XF8006024[24:9] = 0x00000000U - // .. .. ==> MASK : 0x01FFFE00U VAL : 0x00000000U - // .. .. ddrc_reg_mr_wr_busy = 0x0 - // .. .. ==> 0XF8006024[25:25] = 0x00000000U - // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U - // .. .. reg_ddrc_mr_type = 0x0 - // .. .. ==> 0XF8006024[26:26] = 0x00000000U - // .. .. ==> MASK : 0x04000000U VAL : 0x00000000U - // .. .. reg_ddrc_mr_rdata_valid = 0x0 - // .. .. ==> 0XF8006024[27:27] = 0x00000000U - // .. .. ==> MASK : 0x08000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006024, 0x0FFFFFFFU ,0x0000003CU), - // .. .. reg_ddrc_final_wait_x32 = 0x7 - // .. .. ==> 0XF8006028[6:0] = 0x00000007U - // .. .. ==> MASK : 0x0000007FU VAL : 0x00000007U - // .. .. reg_ddrc_pre_ocd_x32 = 0x0 - // .. .. ==> 0XF8006028[10:7] = 0x00000000U - // .. .. ==> MASK : 0x00000780U VAL : 0x00000000U - // .. .. reg_ddrc_t_mrd = 0x4 - // .. .. ==> 0XF8006028[13:11] = 0x00000004U - // .. .. ==> MASK : 0x00003800U VAL : 0x00002000U - // .. .. - EMIT_MASKWRITE(0XF8006028, 0x00003FFFU ,0x00002007U), - // .. .. reg_ddrc_emr2 = 0x8 - // .. .. ==> 0XF800602C[15:0] = 0x00000008U - // .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000008U - // .. .. reg_ddrc_emr3 = 0x0 - // .. .. ==> 0XF800602C[31:16] = 0x00000000U - // .. .. ==> MASK : 0xFFFF0000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800602C, 0xFFFFFFFFU ,0x00000008U), - // .. .. reg_ddrc_mr = 0x930 - // .. .. ==> 0XF8006030[15:0] = 0x00000930U - // .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000930U - // .. .. reg_ddrc_emr = 0x4 - // .. .. ==> 0XF8006030[31:16] = 0x00000004U - // .. .. ==> MASK : 0xFFFF0000U VAL : 0x00040000U - // .. .. - EMIT_MASKWRITE(0XF8006030, 0xFFFFFFFFU ,0x00040930U), - // .. .. reg_ddrc_burst_rdwr = 0x4 - // .. .. ==> 0XF8006034[3:0] = 0x00000004U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000004U - // .. .. reg_ddrc_pre_cke_x1024 = 0x167 - // .. .. ==> 0XF8006034[13:4] = 0x00000167U - // .. .. ==> MASK : 0x00003FF0U VAL : 0x00001670U - // .. .. reg_ddrc_post_cke_x1024 = 0x1 - // .. .. ==> 0XF8006034[25:16] = 0x00000001U - // .. .. ==> MASK : 0x03FF0000U VAL : 0x00010000U - // .. .. reg_ddrc_burstchop = 0x0 - // .. .. ==> 0XF8006034[28:28] = 0x00000000U - // .. .. ==> MASK : 0x10000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006034, 0x13FF3FFFU ,0x00011674U), - // .. .. reg_ddrc_force_low_pri_n = 0x0 - // .. .. ==> 0XF8006038[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_dis_dq = 0x0 - // .. .. ==> 0XF8006038[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_debug_mode = 0x0 - // .. .. ==> 0XF8006038[6:6] = 0x00000000U - // .. .. ==> MASK : 0x00000040U VAL : 0x00000000U - // .. .. reg_phy_wr_level_start = 0x0 - // .. .. ==> 0XF8006038[7:7] = 0x00000000U - // .. .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. .. reg_phy_rd_level_start = 0x0 - // .. .. ==> 0XF8006038[8:8] = 0x00000000U - // .. .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. .. reg_phy_dq0_wait_t = 0x0 - // .. .. ==> 0XF8006038[12:9] = 0x00000000U - // .. .. ==> MASK : 0x00001E00U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006038, 0x00001FC3U ,0x00000000U), - // .. .. reg_ddrc_addrmap_bank_b0 = 0x7 - // .. .. ==> 0XF800603C[3:0] = 0x00000007U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000007U - // .. .. reg_ddrc_addrmap_bank_b1 = 0x7 - // .. .. ==> 0XF800603C[7:4] = 0x00000007U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000070U - // .. .. reg_ddrc_addrmap_bank_b2 = 0x7 - // .. .. ==> 0XF800603C[11:8] = 0x00000007U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000700U - // .. .. reg_ddrc_addrmap_col_b5 = 0x0 - // .. .. ==> 0XF800603C[15:12] = 0x00000000U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b6 = 0x0 - // .. .. ==> 0XF800603C[19:16] = 0x00000000U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800603C, 0x000FFFFFU ,0x00000777U), - // .. .. reg_ddrc_addrmap_col_b2 = 0x0 - // .. .. ==> 0XF8006040[3:0] = 0x00000000U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b3 = 0x0 - // .. .. ==> 0XF8006040[7:4] = 0x00000000U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b4 = 0x0 - // .. .. ==> 0XF8006040[11:8] = 0x00000000U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b7 = 0x0 - // .. .. ==> 0XF8006040[15:12] = 0x00000000U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b8 = 0x0 - // .. .. ==> 0XF8006040[19:16] = 0x00000000U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00000000U - // .. .. reg_ddrc_addrmap_col_b9 = 0xf - // .. .. ==> 0XF8006040[23:20] = 0x0000000FU - // .. .. ==> MASK : 0x00F00000U VAL : 0x00F00000U - // .. .. reg_ddrc_addrmap_col_b10 = 0xf - // .. .. ==> 0XF8006040[27:24] = 0x0000000FU - // .. .. ==> MASK : 0x0F000000U VAL : 0x0F000000U - // .. .. reg_ddrc_addrmap_col_b11 = 0xf - // .. .. ==> 0XF8006040[31:28] = 0x0000000FU - // .. .. ==> MASK : 0xF0000000U VAL : 0xF0000000U - // .. .. - EMIT_MASKWRITE(0XF8006040, 0xFFFFFFFFU ,0xFFF00000U), - // .. .. reg_ddrc_addrmap_row_b0 = 0x6 - // .. .. ==> 0XF8006044[3:0] = 0x00000006U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000006U - // .. .. reg_ddrc_addrmap_row_b1 = 0x6 - // .. .. ==> 0XF8006044[7:4] = 0x00000006U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000060U - // .. .. reg_ddrc_addrmap_row_b2_11 = 0x6 - // .. .. ==> 0XF8006044[11:8] = 0x00000006U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000600U - // .. .. reg_ddrc_addrmap_row_b12 = 0x6 - // .. .. ==> 0XF8006044[15:12] = 0x00000006U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00006000U - // .. .. reg_ddrc_addrmap_row_b13 = 0x6 - // .. .. ==> 0XF8006044[19:16] = 0x00000006U - // .. .. ==> MASK : 0x000F0000U VAL : 0x00060000U - // .. .. reg_ddrc_addrmap_row_b14 = 0xf - // .. .. ==> 0XF8006044[23:20] = 0x0000000FU - // .. .. ==> MASK : 0x00F00000U VAL : 0x00F00000U - // .. .. reg_ddrc_addrmap_row_b15 = 0xf - // .. .. ==> 0XF8006044[27:24] = 0x0000000FU - // .. .. ==> MASK : 0x0F000000U VAL : 0x0F000000U - // .. .. - EMIT_MASKWRITE(0XF8006044, 0x0FFFFFFFU ,0x0FF66666U), - // .. .. reg_ddrc_rank0_rd_odt = 0x0 - // .. .. ==> 0XF8006048[2:0] = 0x00000000U - // .. .. ==> MASK : 0x00000007U VAL : 0x00000000U - // .. .. reg_ddrc_rank0_wr_odt = 0x1 - // .. .. ==> 0XF8006048[5:3] = 0x00000001U - // .. .. ==> MASK : 0x00000038U VAL : 0x00000008U - // .. .. reg_ddrc_rank1_rd_odt = 0x1 - // .. .. ==> 0XF8006048[8:6] = 0x00000001U - // .. .. ==> MASK : 0x000001C0U VAL : 0x00000040U - // .. .. reg_ddrc_rank1_wr_odt = 0x1 - // .. .. ==> 0XF8006048[11:9] = 0x00000001U - // .. .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. .. reg_phy_rd_local_odt = 0x0 - // .. .. ==> 0XF8006048[13:12] = 0x00000000U - // .. .. ==> MASK : 0x00003000U VAL : 0x00000000U - // .. .. reg_phy_wr_local_odt = 0x3 - // .. .. ==> 0XF8006048[15:14] = 0x00000003U - // .. .. ==> MASK : 0x0000C000U VAL : 0x0000C000U - // .. .. reg_phy_idle_local_odt = 0x3 - // .. .. ==> 0XF8006048[17:16] = 0x00000003U - // .. .. ==> MASK : 0x00030000U VAL : 0x00030000U - // .. .. reg_ddrc_rank2_rd_odt = 0x0 - // .. .. ==> 0XF8006048[20:18] = 0x00000000U - // .. .. ==> MASK : 0x001C0000U VAL : 0x00000000U - // .. .. reg_ddrc_rank2_wr_odt = 0x0 - // .. .. ==> 0XF8006048[23:21] = 0x00000000U - // .. .. ==> MASK : 0x00E00000U VAL : 0x00000000U - // .. .. reg_ddrc_rank3_rd_odt = 0x0 - // .. .. ==> 0XF8006048[26:24] = 0x00000000U - // .. .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. .. reg_ddrc_rank3_wr_odt = 0x0 - // .. .. ==> 0XF8006048[29:27] = 0x00000000U - // .. .. ==> MASK : 0x38000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006048, 0x3FFFFFFFU ,0x0003C248U), - // .. .. reg_phy_rd_cmd_to_data = 0x0 - // .. .. ==> 0XF8006050[3:0] = 0x00000000U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U - // .. .. reg_phy_wr_cmd_to_data = 0x0 - // .. .. ==> 0XF8006050[7:4] = 0x00000000U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. .. reg_phy_rdc_we_to_re_delay = 0x8 - // .. .. ==> 0XF8006050[11:8] = 0x00000008U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000800U - // .. .. reg_phy_rdc_fifo_rst_disable = 0x0 - // .. .. ==> 0XF8006050[15:15] = 0x00000000U - // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U - // .. .. reg_phy_use_fixed_re = 0x1 - // .. .. ==> 0XF8006050[16:16] = 0x00000001U - // .. .. ==> MASK : 0x00010000U VAL : 0x00010000U - // .. .. reg_phy_rdc_fifo_rst_err_cnt_clr = 0x0 - // .. .. ==> 0XF8006050[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_phy_dis_phy_ctrl_rstn = 0x0 - // .. .. ==> 0XF8006050[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_phy_clk_stall_level = 0x0 - // .. .. ==> 0XF8006050[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_num_of_dq0 = 0x7 - // .. .. ==> 0XF8006050[27:24] = 0x00000007U - // .. .. ==> MASK : 0x0F000000U VAL : 0x07000000U - // .. .. reg_phy_wrlvl_num_of_dq0 = 0x7 - // .. .. ==> 0XF8006050[31:28] = 0x00000007U - // .. .. ==> MASK : 0xF0000000U VAL : 0x70000000U - // .. .. - EMIT_MASKWRITE(0XF8006050, 0xFF0F8FFFU ,0x77010800U), - // .. .. reg_ddrc_dll_calib_to_min_x1024 = 0x1 - // .. .. ==> 0XF8006058[7:0] = 0x00000001U - // .. .. ==> MASK : 0x000000FFU VAL : 0x00000001U - // .. .. reg_ddrc_dll_calib_to_max_x1024 = 0x1 - // .. .. ==> 0XF8006058[15:8] = 0x00000001U - // .. .. ==> MASK : 0x0000FF00U VAL : 0x00000100U - // .. .. reg_ddrc_dis_dll_calib = 0x0 - // .. .. ==> 0XF8006058[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006058, 0x0001FFFFU ,0x00000101U), - // .. .. reg_ddrc_rd_odt_delay = 0x3 - // .. .. ==> 0XF800605C[3:0] = 0x00000003U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000003U - // .. .. reg_ddrc_wr_odt_delay = 0x0 - // .. .. ==> 0XF800605C[7:4] = 0x00000000U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. .. reg_ddrc_rd_odt_hold = 0x0 - // .. .. ==> 0XF800605C[11:8] = 0x00000000U - // .. .. ==> MASK : 0x00000F00U VAL : 0x00000000U - // .. .. reg_ddrc_wr_odt_hold = 0x5 - // .. .. ==> 0XF800605C[15:12] = 0x00000005U - // .. .. ==> MASK : 0x0000F000U VAL : 0x00005000U - // .. .. - EMIT_MASKWRITE(0XF800605C, 0x0000FFFFU ,0x00005003U), - // .. .. reg_ddrc_pageclose = 0x0 - // .. .. ==> 0XF8006060[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_lpr_num_entries = 0x1f - // .. .. ==> 0XF8006060[6:1] = 0x0000001FU - // .. .. ==> MASK : 0x0000007EU VAL : 0x0000003EU - // .. .. reg_ddrc_auto_pre_en = 0x0 - // .. .. ==> 0XF8006060[7:7] = 0x00000000U - // .. .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. .. reg_ddrc_refresh_update_level = 0x0 - // .. .. ==> 0XF8006060[8:8] = 0x00000000U - // .. .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. .. reg_ddrc_dis_wc = 0x0 - // .. .. ==> 0XF8006060[9:9] = 0x00000000U - // .. .. ==> MASK : 0x00000200U VAL : 0x00000000U - // .. .. reg_ddrc_dis_collision_page_opt = 0x0 - // .. .. ==> 0XF8006060[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_ddrc_selfref_en = 0x0 - // .. .. ==> 0XF8006060[12:12] = 0x00000000U - // .. .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006060, 0x000017FFU ,0x0000003EU), - // .. .. reg_ddrc_go2critical_hysteresis = 0x0 - // .. .. ==> 0XF8006064[12:5] = 0x00000000U - // .. .. ==> MASK : 0x00001FE0U VAL : 0x00000000U - // .. .. reg_arb_go2critical_en = 0x1 - // .. .. ==> 0XF8006064[17:17] = 0x00000001U - // .. .. ==> MASK : 0x00020000U VAL : 0x00020000U - // .. .. - EMIT_MASKWRITE(0XF8006064, 0x00021FE0U ,0x00020000U), - // .. .. reg_ddrc_wrlvl_ww = 0x41 - // .. .. ==> 0XF8006068[7:0] = 0x00000041U - // .. .. ==> MASK : 0x000000FFU VAL : 0x00000041U - // .. .. reg_ddrc_rdlvl_rr = 0x41 - // .. .. ==> 0XF8006068[15:8] = 0x00000041U - // .. .. ==> MASK : 0x0000FF00U VAL : 0x00004100U - // .. .. reg_ddrc_dfi_t_wlmrd = 0x28 - // .. .. ==> 0XF8006068[25:16] = 0x00000028U - // .. .. ==> MASK : 0x03FF0000U VAL : 0x00280000U - // .. .. - EMIT_MASKWRITE(0XF8006068, 0x03FFFFFFU ,0x00284141U), - // .. .. dfi_t_ctrlupd_interval_min_x1024 = 0x10 - // .. .. ==> 0XF800606C[7:0] = 0x00000010U - // .. .. ==> MASK : 0x000000FFU VAL : 0x00000010U - // .. .. dfi_t_ctrlupd_interval_max_x1024 = 0x16 - // .. .. ==> 0XF800606C[15:8] = 0x00000016U - // .. .. ==> MASK : 0x0000FF00U VAL : 0x00001600U - // .. .. - EMIT_MASKWRITE(0XF800606C, 0x0000FFFFU ,0x00001610U), - // .. .. refresh_timer0_start_value_x32 = 0x0 - // .. .. ==> 0XF80060A0[11:0] = 0x00000000U - // .. .. ==> MASK : 0x00000FFFU VAL : 0x00000000U - // .. .. refresh_timer1_start_value_x32 = 0x8 - // .. .. ==> 0XF80060A0[23:12] = 0x00000008U - // .. .. ==> MASK : 0x00FFF000U VAL : 0x00008000U - // .. .. - EMIT_MASKWRITE(0XF80060A0, 0x00FFFFFFU ,0x00008000U), - // .. .. reg_ddrc_dis_auto_zq = 0x0 - // .. .. ==> 0XF80060A4[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_ddr3 = 0x1 - // .. .. ==> 0XF80060A4[1:1] = 0x00000001U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. .. reg_ddrc_t_mod = 0x200 - // .. .. ==> 0XF80060A4[11:2] = 0x00000200U - // .. .. ==> MASK : 0x00000FFCU VAL : 0x00000800U - // .. .. reg_ddrc_t_zq_long_nop = 0x200 - // .. .. ==> 0XF80060A4[21:12] = 0x00000200U - // .. .. ==> MASK : 0x003FF000U VAL : 0x00200000U - // .. .. reg_ddrc_t_zq_short_nop = 0x40 - // .. .. ==> 0XF80060A4[31:22] = 0x00000040U - // .. .. ==> MASK : 0xFFC00000U VAL : 0x10000000U - // .. .. - EMIT_MASKWRITE(0XF80060A4, 0xFFFFFFFFU ,0x10200802U), - // .. .. t_zq_short_interval_x1024 = 0xc845 - // .. .. ==> 0XF80060A8[19:0] = 0x0000C845U - // .. .. ==> MASK : 0x000FFFFFU VAL : 0x0000C845U - // .. .. dram_rstn_x1024 = 0x67 - // .. .. ==> 0XF80060A8[27:20] = 0x00000067U - // .. .. ==> MASK : 0x0FF00000U VAL : 0x06700000U - // .. .. - EMIT_MASKWRITE(0XF80060A8, 0x0FFFFFFFU ,0x0670C845U), - // .. .. deeppowerdown_en = 0x0 - // .. .. ==> 0XF80060AC[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. deeppowerdown_to_x1024 = 0xff - // .. .. ==> 0XF80060AC[8:1] = 0x000000FFU - // .. .. ==> MASK : 0x000001FEU VAL : 0x000001FEU - // .. .. - EMIT_MASKWRITE(0XF80060AC, 0x000001FFU ,0x000001FEU), - // .. .. dfi_wrlvl_max_x1024 = 0xfff - // .. .. ==> 0XF80060B0[11:0] = 0x00000FFFU - // .. .. ==> MASK : 0x00000FFFU VAL : 0x00000FFFU - // .. .. dfi_rdlvl_max_x1024 = 0xfff - // .. .. ==> 0XF80060B0[23:12] = 0x00000FFFU - // .. .. ==> MASK : 0x00FFF000U VAL : 0x00FFF000U - // .. .. ddrc_reg_twrlvl_max_error = 0x0 - // .. .. ==> 0XF80060B0[24:24] = 0x00000000U - // .. .. ==> MASK : 0x01000000U VAL : 0x00000000U - // .. .. ddrc_reg_trdlvl_max_error = 0x0 - // .. .. ==> 0XF80060B0[25:25] = 0x00000000U - // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U - // .. .. reg_ddrc_dfi_wr_level_en = 0x1 - // .. .. ==> 0XF80060B0[26:26] = 0x00000001U - // .. .. ==> MASK : 0x04000000U VAL : 0x04000000U - // .. .. reg_ddrc_dfi_rd_dqs_gate_level = 0x1 - // .. .. ==> 0XF80060B0[27:27] = 0x00000001U - // .. .. ==> MASK : 0x08000000U VAL : 0x08000000U - // .. .. reg_ddrc_dfi_rd_data_eye_train = 0x1 - // .. .. ==> 0XF80060B0[28:28] = 0x00000001U - // .. .. ==> MASK : 0x10000000U VAL : 0x10000000U - // .. .. - EMIT_MASKWRITE(0XF80060B0, 0x1FFFFFFFU ,0x1CFFFFFFU), - // .. .. reg_ddrc_2t_delay = 0x0 - // .. .. ==> 0XF80060B4[8:0] = 0x00000000U - // .. .. ==> MASK : 0x000001FFU VAL : 0x00000000U - // .. .. reg_ddrc_skip_ocd = 0x1 - // .. .. ==> 0XF80060B4[9:9] = 0x00000001U - // .. .. ==> MASK : 0x00000200U VAL : 0x00000200U - // .. .. reg_ddrc_dis_pre_bypass = 0x0 - // .. .. ==> 0XF80060B4[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060B4, 0x000007FFU ,0x00000200U), - // .. .. reg_ddrc_dfi_t_rddata_en = 0x6 - // .. .. ==> 0XF80060B8[4:0] = 0x00000006U - // .. .. ==> MASK : 0x0000001FU VAL : 0x00000006U - // .. .. reg_ddrc_dfi_t_ctrlup_min = 0x3 - // .. .. ==> 0XF80060B8[14:5] = 0x00000003U - // .. .. ==> MASK : 0x00007FE0U VAL : 0x00000060U - // .. .. reg_ddrc_dfi_t_ctrlup_max = 0x40 - // .. .. ==> 0XF80060B8[24:15] = 0x00000040U - // .. .. ==> MASK : 0x01FF8000U VAL : 0x00200000U - // .. .. - EMIT_MASKWRITE(0XF80060B8, 0x01FFFFFFU ,0x00200066U), - // .. .. Clear_Uncorrectable_DRAM_ECC_error = 0x0 - // .. .. ==> 0XF80060C4[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. Clear_Correctable_DRAM_ECC_error = 0x0 - // .. .. ==> 0XF80060C4[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060C4, 0x00000003U ,0x00000000U), - // .. .. CORR_ECC_LOG_VALID = 0x0 - // .. .. ==> 0XF80060C8[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. ECC_CORRECTED_BIT_NUM = 0x0 - // .. .. ==> 0XF80060C8[7:1] = 0x00000000U - // .. .. ==> MASK : 0x000000FEU VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060C8, 0x000000FFU ,0x00000000U), - // .. .. UNCORR_ECC_LOG_VALID = 0x0 - // .. .. ==> 0XF80060DC[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060DC, 0x00000001U ,0x00000000U), - // .. .. STAT_NUM_CORR_ERR = 0x0 - // .. .. ==> 0XF80060F0[15:8] = 0x00000000U - // .. .. ==> MASK : 0x0000FF00U VAL : 0x00000000U - // .. .. STAT_NUM_UNCORR_ERR = 0x0 - // .. .. ==> 0XF80060F0[7:0] = 0x00000000U - // .. .. ==> MASK : 0x000000FFU VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80060F0, 0x0000FFFFU ,0x00000000U), - // .. .. reg_ddrc_ecc_mode = 0x0 - // .. .. ==> 0XF80060F4[2:0] = 0x00000000U - // .. .. ==> MASK : 0x00000007U VAL : 0x00000000U - // .. .. reg_ddrc_dis_scrub = 0x1 - // .. .. ==> 0XF80060F4[3:3] = 0x00000001U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000008U - // .. .. - EMIT_MASKWRITE(0XF80060F4, 0x0000000FU ,0x00000008U), - // .. .. reg_phy_dif_on = 0x0 - // .. .. ==> 0XF8006114[3:0] = 0x00000000U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U - // .. .. reg_phy_dif_off = 0x0 - // .. .. ==> 0XF8006114[7:4] = 0x00000000U - // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006114, 0x000000FFU ,0x00000000U), - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF8006118[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006118[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF8006118[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006118[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_tx = 0x0 - // .. .. ==> 0XF8006118[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_rx = 0x0 - // .. .. ==> 0XF8006118[5:5] = 0x00000000U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF8006118[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF8006118[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF8006118[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF8006118, 0x7FFFFFFFU ,0x40000001U), - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF800611C[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF800611C[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF800611C[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF800611C[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_tx = 0x0 - // .. .. ==> 0XF800611C[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_rx = 0x0 - // .. .. ==> 0XF800611C[5:5] = 0x00000000U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF800611C[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF800611C[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF800611C[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF800611C, 0x7FFFFFFFU ,0x40000001U), - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF8006120[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006120[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF8006120[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006120[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_tx = 0x0 - // .. .. ==> 0XF8006120[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_rx = 0x0 - // .. .. ==> 0XF8006120[5:5] = 0x00000000U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF8006120[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF8006120[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF8006120[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF8006120, 0x7FFFFFFFU ,0x40000001U), - // .. .. reg_phy_data_slice_in_use = 0x1 - // .. .. ==> 0XF8006124[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_phy_rdlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006124[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_gatelvl_inc_mode = 0x0 - // .. .. ==> 0XF8006124[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_wrlvl_inc_mode = 0x0 - // .. .. ==> 0XF8006124[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_tx = 0x0 - // .. .. ==> 0XF8006124[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reg_phy_board_lpbk_rx = 0x0 - // .. .. ==> 0XF8006124[5:5] = 0x00000000U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. .. reg_phy_bist_shift_dq = 0x0 - // .. .. ==> 0XF8006124[14:6] = 0x00000000U - // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U - // .. .. reg_phy_bist_err_clr = 0x0 - // .. .. ==> 0XF8006124[23:15] = 0x00000000U - // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U - // .. .. reg_phy_dq_offset = 0x40 - // .. .. ==> 0XF8006124[30:24] = 0x00000040U - // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U - // .. .. - EMIT_MASKWRITE(0XF8006124, 0x7FFFFFFFU ,0x40000001U), - // .. .. reg_phy_wrlvl_init_ratio = 0x0 - // .. .. ==> 0XF800612C[9:0] = 0x00000000U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U - // .. .. reg_phy_gatelvl_init_ratio = 0x8f - // .. .. ==> 0XF800612C[19:10] = 0x0000008FU - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00023C00U - // .. .. - EMIT_MASKWRITE(0XF800612C, 0x000FFFFFU ,0x00023C00U), - // .. .. reg_phy_wrlvl_init_ratio = 0x0 - // .. .. ==> 0XF8006130[9:0] = 0x00000000U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U - // .. .. reg_phy_gatelvl_init_ratio = 0x8a - // .. .. ==> 0XF8006130[19:10] = 0x0000008AU - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00022800U - // .. .. - EMIT_MASKWRITE(0XF8006130, 0x000FFFFFU ,0x00022800U), - // .. .. reg_phy_wrlvl_init_ratio = 0x0 - // .. .. ==> 0XF8006134[9:0] = 0x00000000U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U - // .. .. reg_phy_gatelvl_init_ratio = 0x8b - // .. .. ==> 0XF8006134[19:10] = 0x0000008BU - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00022C00U - // .. .. - EMIT_MASKWRITE(0XF8006134, 0x000FFFFFU ,0x00022C00U), - // .. .. reg_phy_wrlvl_init_ratio = 0x0 - // .. .. ==> 0XF8006138[9:0] = 0x00000000U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U - // .. .. reg_phy_gatelvl_init_ratio = 0x92 - // .. .. ==> 0XF8006138[19:10] = 0x00000092U - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00024800U - // .. .. - EMIT_MASKWRITE(0XF8006138, 0x000FFFFFU ,0x00024800U), - // .. .. reg_phy_rd_dqs_slave_ratio = 0x35 - // .. .. ==> 0XF8006140[9:0] = 0x00000035U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U - // .. .. reg_phy_rd_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006140[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_rd_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006140[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006140, 0x000FFFFFU ,0x00000035U), - // .. .. reg_phy_rd_dqs_slave_ratio = 0x35 - // .. .. ==> 0XF8006144[9:0] = 0x00000035U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U - // .. .. reg_phy_rd_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006144[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_rd_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006144[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006144, 0x000FFFFFU ,0x00000035U), - // .. .. reg_phy_rd_dqs_slave_ratio = 0x35 - // .. .. ==> 0XF8006148[9:0] = 0x00000035U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U - // .. .. reg_phy_rd_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006148[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_rd_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006148[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006148, 0x000FFFFFU ,0x00000035U), - // .. .. reg_phy_rd_dqs_slave_ratio = 0x35 - // .. .. ==> 0XF800614C[9:0] = 0x00000035U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U - // .. .. reg_phy_rd_dqs_slave_force = 0x0 - // .. .. ==> 0XF800614C[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_rd_dqs_slave_delay = 0x0 - // .. .. ==> 0XF800614C[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800614C, 0x000FFFFFU ,0x00000035U), - // .. .. reg_phy_wr_dqs_slave_ratio = 0x77 - // .. .. ==> 0XF8006154[9:0] = 0x00000077U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000077U - // .. .. reg_phy_wr_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006154[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006154[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006154, 0x000FFFFFU ,0x00000077U), - // .. .. reg_phy_wr_dqs_slave_ratio = 0x7c - // .. .. ==> 0XF8006158[9:0] = 0x0000007CU - // .. .. ==> MASK : 0x000003FFU VAL : 0x0000007CU - // .. .. reg_phy_wr_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006158[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006158[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006158, 0x000FFFFFU ,0x0000007CU), - // .. .. reg_phy_wr_dqs_slave_ratio = 0x7c - // .. .. ==> 0XF800615C[9:0] = 0x0000007CU - // .. .. ==> MASK : 0x000003FFU VAL : 0x0000007CU - // .. .. reg_phy_wr_dqs_slave_force = 0x0 - // .. .. ==> 0XF800615C[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_dqs_slave_delay = 0x0 - // .. .. ==> 0XF800615C[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800615C, 0x000FFFFFU ,0x0000007CU), - // .. .. reg_phy_wr_dqs_slave_ratio = 0x75 - // .. .. ==> 0XF8006160[9:0] = 0x00000075U - // .. .. ==> MASK : 0x000003FFU VAL : 0x00000075U - // .. .. reg_phy_wr_dqs_slave_force = 0x0 - // .. .. ==> 0XF8006160[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_dqs_slave_delay = 0x0 - // .. .. ==> 0XF8006160[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006160, 0x000FFFFFU ,0x00000075U), - // .. .. reg_phy_fifo_we_slave_ratio = 0xe4 - // .. .. ==> 0XF8006168[10:0] = 0x000000E4U - // .. .. ==> MASK : 0x000007FFU VAL : 0x000000E4U - // .. .. reg_phy_fifo_we_in_force = 0x0 - // .. .. ==> 0XF8006168[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. reg_phy_fifo_we_in_delay = 0x0 - // .. .. ==> 0XF8006168[20:12] = 0x00000000U - // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006168, 0x001FFFFFU ,0x000000E4U), - // .. .. reg_phy_fifo_we_slave_ratio = 0xdf - // .. .. ==> 0XF800616C[10:0] = 0x000000DFU - // .. .. ==> MASK : 0x000007FFU VAL : 0x000000DFU - // .. .. reg_phy_fifo_we_in_force = 0x0 - // .. .. ==> 0XF800616C[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. reg_phy_fifo_we_in_delay = 0x0 - // .. .. ==> 0XF800616C[20:12] = 0x00000000U - // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800616C, 0x001FFFFFU ,0x000000DFU), - // .. .. reg_phy_fifo_we_slave_ratio = 0xe0 - // .. .. ==> 0XF8006170[10:0] = 0x000000E0U - // .. .. ==> MASK : 0x000007FFU VAL : 0x000000E0U - // .. .. reg_phy_fifo_we_in_force = 0x0 - // .. .. ==> 0XF8006170[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. reg_phy_fifo_we_in_delay = 0x0 - // .. .. ==> 0XF8006170[20:12] = 0x00000000U - // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006170, 0x001FFFFFU ,0x000000E0U), - // .. .. reg_phy_fifo_we_slave_ratio = 0xe7 - // .. .. ==> 0XF8006174[10:0] = 0x000000E7U - // .. .. ==> MASK : 0x000007FFU VAL : 0x000000E7U - // .. .. reg_phy_fifo_we_in_force = 0x0 - // .. .. ==> 0XF8006174[11:11] = 0x00000000U - // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. .. reg_phy_fifo_we_in_delay = 0x0 - // .. .. ==> 0XF8006174[20:12] = 0x00000000U - // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006174, 0x001FFFFFU ,0x000000E7U), - // .. .. reg_phy_wr_data_slave_ratio = 0xb7 - // .. .. ==> 0XF800617C[9:0] = 0x000000B7U - // .. .. ==> MASK : 0x000003FFU VAL : 0x000000B7U - // .. .. reg_phy_wr_data_slave_force = 0x0 - // .. .. ==> 0XF800617C[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_data_slave_delay = 0x0 - // .. .. ==> 0XF800617C[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800617C, 0x000FFFFFU ,0x000000B7U), - // .. .. reg_phy_wr_data_slave_ratio = 0xbc - // .. .. ==> 0XF8006180[9:0] = 0x000000BCU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000000BCU - // .. .. reg_phy_wr_data_slave_force = 0x0 - // .. .. ==> 0XF8006180[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_data_slave_delay = 0x0 - // .. .. ==> 0XF8006180[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006180, 0x000FFFFFU ,0x000000BCU), - // .. .. reg_phy_wr_data_slave_ratio = 0xbc - // .. .. ==> 0XF8006184[9:0] = 0x000000BCU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000000BCU - // .. .. reg_phy_wr_data_slave_force = 0x0 - // .. .. ==> 0XF8006184[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_data_slave_delay = 0x0 - // .. .. ==> 0XF8006184[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006184, 0x000FFFFFU ,0x000000BCU), - // .. .. reg_phy_wr_data_slave_ratio = 0xb5 - // .. .. ==> 0XF8006188[9:0] = 0x000000B5U - // .. .. ==> MASK : 0x000003FFU VAL : 0x000000B5U - // .. .. reg_phy_wr_data_slave_force = 0x0 - // .. .. ==> 0XF8006188[10:10] = 0x00000000U - // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. .. reg_phy_wr_data_slave_delay = 0x0 - // .. .. ==> 0XF8006188[19:11] = 0x00000000U - // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006188, 0x000FFFFFU ,0x000000B5U), - // .. .. reg_phy_loopback = 0x0 - // .. .. ==> 0XF8006190[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_phy_bl2 = 0x0 - // .. .. ==> 0XF8006190[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_phy_at_spd_atpg = 0x0 - // .. .. ==> 0XF8006190[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_phy_bist_enable = 0x0 - // .. .. ==> 0XF8006190[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. reg_phy_bist_force_err = 0x0 - // .. .. ==> 0XF8006190[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. reg_phy_bist_mode = 0x0 - // .. .. ==> 0XF8006190[6:5] = 0x00000000U - // .. .. ==> MASK : 0x00000060U VAL : 0x00000000U - // .. .. reg_phy_invert_clkout = 0x1 - // .. .. ==> 0XF8006190[7:7] = 0x00000001U - // .. .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. .. reg_phy_all_dq_mpr_rd_resp = 0x0 - // .. .. ==> 0XF8006190[8:8] = 0x00000000U - // .. .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. .. reg_phy_sel_logic = 0x0 - // .. .. ==> 0XF8006190[9:9] = 0x00000000U - // .. .. ==> MASK : 0x00000200U VAL : 0x00000000U - // .. .. reg_phy_ctrl_slave_ratio = 0x100 - // .. .. ==> 0XF8006190[19:10] = 0x00000100U - // .. .. ==> MASK : 0x000FFC00U VAL : 0x00040000U - // .. .. reg_phy_ctrl_slave_force = 0x0 - // .. .. ==> 0XF8006190[20:20] = 0x00000000U - // .. .. ==> MASK : 0x00100000U VAL : 0x00000000U - // .. .. reg_phy_ctrl_slave_delay = 0x0 - // .. .. ==> 0XF8006190[27:21] = 0x00000000U - // .. .. ==> MASK : 0x0FE00000U VAL : 0x00000000U - // .. .. reg_phy_use_rank0_delays = 0x1 - // .. .. ==> 0XF8006190[28:28] = 0x00000001U - // .. .. ==> MASK : 0x10000000U VAL : 0x10000000U - // .. .. reg_phy_lpddr = 0x0 - // .. .. ==> 0XF8006190[29:29] = 0x00000000U - // .. .. ==> MASK : 0x20000000U VAL : 0x00000000U - // .. .. reg_phy_cmd_latency = 0x0 - // .. .. ==> 0XF8006190[30:30] = 0x00000000U - // .. .. ==> MASK : 0x40000000U VAL : 0x00000000U - // .. .. reg_phy_int_lpbk = 0x0 - // .. .. ==> 0XF8006190[31:31] = 0x00000000U - // .. .. ==> MASK : 0x80000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006190, 0xFFFFFFFFU ,0x10040080U), - // .. .. reg_phy_wr_rl_delay = 0x2 - // .. .. ==> 0XF8006194[4:0] = 0x00000002U - // .. .. ==> MASK : 0x0000001FU VAL : 0x00000002U - // .. .. reg_phy_rd_rl_delay = 0x4 - // .. .. ==> 0XF8006194[9:5] = 0x00000004U - // .. .. ==> MASK : 0x000003E0U VAL : 0x00000080U - // .. .. reg_phy_dll_lock_diff = 0xf - // .. .. ==> 0XF8006194[13:10] = 0x0000000FU - // .. .. ==> MASK : 0x00003C00U VAL : 0x00003C00U - // .. .. reg_phy_use_wr_level = 0x1 - // .. .. ==> 0XF8006194[14:14] = 0x00000001U - // .. .. ==> MASK : 0x00004000U VAL : 0x00004000U - // .. .. reg_phy_use_rd_dqs_gate_level = 0x1 - // .. .. ==> 0XF8006194[15:15] = 0x00000001U - // .. .. ==> MASK : 0x00008000U VAL : 0x00008000U - // .. .. reg_phy_use_rd_data_eye_level = 0x1 - // .. .. ==> 0XF8006194[16:16] = 0x00000001U - // .. .. ==> MASK : 0x00010000U VAL : 0x00010000U - // .. .. reg_phy_dis_calib_rst = 0x0 - // .. .. ==> 0XF8006194[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_phy_ctrl_slave_delay = 0x0 - // .. .. ==> 0XF8006194[19:18] = 0x00000000U - // .. .. ==> MASK : 0x000C0000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006194, 0x000FFFFFU ,0x0001FC82U), - // .. .. reg_arb_page_addr_mask = 0x0 - // .. .. ==> 0XF8006204[31:0] = 0x00000000U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006204, 0xFFFFFFFFU ,0x00000000U), - // .. .. reg_arb_pri_wr_portn = 0x3ff - // .. .. ==> 0XF8006208[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_wr_portn = 0x0 - // .. .. ==> 0XF8006208[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_wr_portn = 0x0 - // .. .. ==> 0XF8006208[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_wr_portn = 0x0 - // .. .. ==> 0XF8006208[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_dis_rmw_portn = 0x1 - // .. .. ==> 0XF8006208[19:19] = 0x00000001U - // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. .. - EMIT_MASKWRITE(0XF8006208, 0x000F03FFU ,0x000803FFU), - // .. .. reg_arb_pri_wr_portn = 0x3ff - // .. .. ==> 0XF800620C[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_wr_portn = 0x0 - // .. .. ==> 0XF800620C[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_wr_portn = 0x0 - // .. .. ==> 0XF800620C[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_wr_portn = 0x0 - // .. .. ==> 0XF800620C[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_dis_rmw_portn = 0x1 - // .. .. ==> 0XF800620C[19:19] = 0x00000001U - // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. .. - EMIT_MASKWRITE(0XF800620C, 0x000F03FFU ,0x000803FFU), - // .. .. reg_arb_pri_wr_portn = 0x3ff - // .. .. ==> 0XF8006210[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_wr_portn = 0x0 - // .. .. ==> 0XF8006210[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_wr_portn = 0x0 - // .. .. ==> 0XF8006210[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_wr_portn = 0x0 - // .. .. ==> 0XF8006210[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_dis_rmw_portn = 0x1 - // .. .. ==> 0XF8006210[19:19] = 0x00000001U - // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. .. - EMIT_MASKWRITE(0XF8006210, 0x000F03FFU ,0x000803FFU), - // .. .. reg_arb_pri_wr_portn = 0x3ff - // .. .. ==> 0XF8006214[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_wr_portn = 0x0 - // .. .. ==> 0XF8006214[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_wr_portn = 0x0 - // .. .. ==> 0XF8006214[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_wr_portn = 0x0 - // .. .. ==> 0XF8006214[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_dis_rmw_portn = 0x1 - // .. .. ==> 0XF8006214[19:19] = 0x00000001U - // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. .. - EMIT_MASKWRITE(0XF8006214, 0x000F03FFU ,0x000803FFU), - // .. .. reg_arb_pri_rd_portn = 0x3ff - // .. .. ==> 0XF8006218[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_rd_portn = 0x0 - // .. .. ==> 0XF8006218[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_rd_portn = 0x0 - // .. .. ==> 0XF8006218[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_rd_portn = 0x0 - // .. .. ==> 0XF8006218[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_set_hpr_rd_portn = 0x0 - // .. .. ==> 0XF8006218[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006218, 0x000F03FFU ,0x000003FFU), - // .. .. reg_arb_pri_rd_portn = 0x3ff - // .. .. ==> 0XF800621C[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_rd_portn = 0x0 - // .. .. ==> 0XF800621C[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_rd_portn = 0x0 - // .. .. ==> 0XF800621C[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_rd_portn = 0x0 - // .. .. ==> 0XF800621C[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_set_hpr_rd_portn = 0x0 - // .. .. ==> 0XF800621C[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF800621C, 0x000F03FFU ,0x000003FFU), - // .. .. reg_arb_pri_rd_portn = 0x3ff - // .. .. ==> 0XF8006220[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_rd_portn = 0x0 - // .. .. ==> 0XF8006220[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_rd_portn = 0x0 - // .. .. ==> 0XF8006220[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_rd_portn = 0x0 - // .. .. ==> 0XF8006220[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_set_hpr_rd_portn = 0x0 - // .. .. ==> 0XF8006220[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006220, 0x000F03FFU ,0x000003FFU), - // .. .. reg_arb_pri_rd_portn = 0x3ff - // .. .. ==> 0XF8006224[9:0] = 0x000003FFU - // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU - // .. .. reg_arb_disable_aging_rd_portn = 0x0 - // .. .. ==> 0XF8006224[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. reg_arb_disable_urgent_rd_portn = 0x0 - // .. .. ==> 0XF8006224[17:17] = 0x00000000U - // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. .. reg_arb_dis_page_match_rd_portn = 0x0 - // .. .. ==> 0XF8006224[18:18] = 0x00000000U - // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U - // .. .. reg_arb_set_hpr_rd_portn = 0x0 - // .. .. ==> 0XF8006224[19:19] = 0x00000000U - // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006224, 0x000F03FFU ,0x000003FFU), - // .. .. reg_ddrc_lpddr2 = 0x0 - // .. .. ==> 0XF80062A8[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. reg_ddrc_per_bank_refresh = 0x0 - // .. .. ==> 0XF80062A8[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_ddrc_derate_enable = 0x0 - // .. .. ==> 0XF80062A8[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. reg_ddrc_mr4_margin = 0x0 - // .. .. ==> 0XF80062A8[11:4] = 0x00000000U - // .. .. ==> MASK : 0x00000FF0U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80062A8, 0x00000FF7U ,0x00000000U), - // .. .. reg_ddrc_mr4_read_interval = 0x0 - // .. .. ==> 0XF80062AC[31:0] = 0x00000000U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF80062AC, 0xFFFFFFFFU ,0x00000000U), - // .. .. reg_ddrc_min_stable_clock_x1 = 0x5 - // .. .. ==> 0XF80062B0[3:0] = 0x00000005U - // .. .. ==> MASK : 0x0000000FU VAL : 0x00000005U - // .. .. reg_ddrc_idle_after_reset_x32 = 0x12 - // .. .. ==> 0XF80062B0[11:4] = 0x00000012U - // .. .. ==> MASK : 0x00000FF0U VAL : 0x00000120U - // .. .. reg_ddrc_t_mrw = 0x5 - // .. .. ==> 0XF80062B0[21:12] = 0x00000005U - // .. .. ==> MASK : 0x003FF000U VAL : 0x00005000U - // .. .. - EMIT_MASKWRITE(0XF80062B0, 0x003FFFFFU ,0x00005125U), - // .. .. reg_ddrc_max_auto_init_x1024 = 0xa6 - // .. .. ==> 0XF80062B4[7:0] = 0x000000A6U - // .. .. ==> MASK : 0x000000FFU VAL : 0x000000A6U - // .. .. reg_ddrc_dev_zqinit_x32 = 0x12 - // .. .. ==> 0XF80062B4[17:8] = 0x00000012U - // .. .. ==> MASK : 0x0003FF00U VAL : 0x00001200U - // .. .. - EMIT_MASKWRITE(0XF80062B4, 0x0003FFFFU ,0x000012A6U), - // .. .. START: POLL ON DCI STATUS - // .. .. DONE = 1 - // .. .. ==> 0XF8000B74[13:13] = 0x00000001U - // .. .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. .. - EMIT_MASKPOLL(0XF8000B74, 0x00002000U), - // .. .. FINISH: POLL ON DCI STATUS - // .. .. START: UNLOCK DDR - // .. .. reg_ddrc_soft_rstb = 0x1 - // .. .. ==> 0XF8006000[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. reg_ddrc_powerdown_en = 0x0 - // .. .. ==> 0XF8006000[1:1] = 0x00000000U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. .. reg_ddrc_data_bus_width = 0x0 - // .. .. ==> 0XF8006000[3:2] = 0x00000000U - // .. .. ==> MASK : 0x0000000CU VAL : 0x00000000U - // .. .. reg_ddrc_burst8_refresh = 0x0 - // .. .. ==> 0XF8006000[6:4] = 0x00000000U - // .. .. ==> MASK : 0x00000070U VAL : 0x00000000U - // .. .. reg_ddrc_rdwr_idle_gap = 1 - // .. .. ==> 0XF8006000[13:7] = 0x00000001U - // .. .. ==> MASK : 0x00003F80U VAL : 0x00000080U - // .. .. reg_ddrc_dis_rd_bypass = 0x0 - // .. .. ==> 0XF8006000[14:14] = 0x00000000U - // .. .. ==> MASK : 0x00004000U VAL : 0x00000000U - // .. .. reg_ddrc_dis_act_bypass = 0x0 - // .. .. ==> 0XF8006000[15:15] = 0x00000000U - // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U - // .. .. reg_ddrc_dis_auto_refresh = 0x0 - // .. .. ==> 0XF8006000[16:16] = 0x00000000U - // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8006000, 0x0001FFFFU ,0x00000081U), - // .. .. FINISH: UNLOCK DDR - // .. .. START: CHECK DDR STATUS - // .. .. ddrc_reg_operating_mode = 1 - // .. .. ==> 0XF8006054[2:0] = 0x00000001U - // .. .. ==> MASK : 0x00000007U VAL : 0x00000001U - // .. .. - EMIT_MASKPOLL(0XF8006054, 0x00000007U), - // .. .. FINISH: CHECK DDR STATUS - // .. FINISH: DDR INITIALIZATION - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_mio_init_data_1_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: OCM REMAPPING - // .. VREF_EN = 0x1 - // .. ==> 0XF8000B00[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. VREF_PULLUP_EN = 0x0 - // .. ==> 0XF8000B00[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. CLK_PULLUP_EN = 0x0 - // .. ==> 0XF8000B00[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. SRSTN_PULLUP_EN = 0x0 - // .. ==> 0XF8000B00[9:9] = 0x00000000U - // .. ==> MASK : 0x00000200U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B00, 0x00000303U ,0x00000001U), - // .. FINISH: OCM REMAPPING - // .. START: DDRIOB SETTINGS - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B40[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x0 - // .. ==> 0XF8000B40[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B40[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x0 - // .. ==> 0XF8000B40[4:4] = 0x00000000U - // .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. DCR_TYPE = 0x0 - // .. ==> 0XF8000B40[6:5] = 0x00000000U - // .. ==> MASK : 0x00000060U VAL : 0x00000000U - // .. IBUF_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B40[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B40[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B40[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B40[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B40, 0x00000FFFU ,0x00000600U), - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B44[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x0 - // .. ==> 0XF8000B44[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B44[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x0 - // .. ==> 0XF8000B44[4:4] = 0x00000000U - // .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. DCR_TYPE = 0x0 - // .. ==> 0XF8000B44[6:5] = 0x00000000U - // .. ==> MASK : 0x00000060U VAL : 0x00000000U - // .. IBUF_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B44[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B44[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B44[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B44[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B44, 0x00000FFFU ,0x00000600U), - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B48[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x1 - // .. ==> 0XF8000B48[2:1] = 0x00000001U - // .. ==> MASK : 0x00000006U VAL : 0x00000002U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B48[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x1 - // .. ==> 0XF8000B48[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. DCR_TYPE = 0x3 - // .. ==> 0XF8000B48[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. IBUF_DISABLE_MODE = 0 - // .. ==> 0XF8000B48[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0 - // .. ==> 0XF8000B48[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B48[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B48[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B48, 0x00000FFFU ,0x00000672U), - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B4C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x1 - // .. ==> 0XF8000B4C[2:1] = 0x00000001U - // .. ==> MASK : 0x00000006U VAL : 0x00000002U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B4C[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x1 - // .. ==> 0XF8000B4C[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. DCR_TYPE = 0x3 - // .. ==> 0XF8000B4C[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. IBUF_DISABLE_MODE = 0 - // .. ==> 0XF8000B4C[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0 - // .. ==> 0XF8000B4C[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B4C[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B4C[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B4C, 0x00000FFFU ,0x00000672U), - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B50[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x2 - // .. ==> 0XF8000B50[2:1] = 0x00000002U - // .. ==> MASK : 0x00000006U VAL : 0x00000004U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B50[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x1 - // .. ==> 0XF8000B50[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. DCR_TYPE = 0x3 - // .. ==> 0XF8000B50[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. IBUF_DISABLE_MODE = 0 - // .. ==> 0XF8000B50[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0 - // .. ==> 0XF8000B50[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B50[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B50[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B50, 0x00000FFFU ,0x00000674U), - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B54[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x2 - // .. ==> 0XF8000B54[2:1] = 0x00000002U - // .. ==> MASK : 0x00000006U VAL : 0x00000004U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B54[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x1 - // .. ==> 0XF8000B54[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. DCR_TYPE = 0x3 - // .. ==> 0XF8000B54[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. IBUF_DISABLE_MODE = 0 - // .. ==> 0XF8000B54[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0 - // .. ==> 0XF8000B54[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B54[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B54[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B54, 0x00000FFFU ,0x00000674U), - // .. INP_POWER = 0x0 - // .. ==> 0XF8000B58[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. INP_TYPE = 0x0 - // .. ==> 0XF8000B58[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. DCI_UPDATE = 0x0 - // .. ==> 0XF8000B58[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. TERM_EN = 0x0 - // .. ==> 0XF8000B58[4:4] = 0x00000000U - // .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. DCR_TYPE = 0x0 - // .. ==> 0XF8000B58[6:5] = 0x00000000U - // .. ==> MASK : 0x00000060U VAL : 0x00000000U - // .. IBUF_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B58[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. TERM_DISABLE_MODE = 0x0 - // .. ==> 0XF8000B58[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. OUTPUT_EN = 0x3 - // .. ==> 0XF8000B58[10:9] = 0x00000003U - // .. ==> MASK : 0x00000600U VAL : 0x00000600U - // .. PULLUP_EN = 0x0 - // .. ==> 0XF8000B58[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B58, 0x00000FFFU ,0x00000600U), - // .. DRIVE_P = 0x1c - // .. ==> 0XF8000B5C[6:0] = 0x0000001CU - // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU - // .. DRIVE_N = 0xc - // .. ==> 0XF8000B5C[13:7] = 0x0000000CU - // .. ==> MASK : 0x00003F80U VAL : 0x00000600U - // .. SLEW_P = 0x3 - // .. ==> 0XF8000B5C[18:14] = 0x00000003U - // .. ==> MASK : 0x0007C000U VAL : 0x0000C000U - // .. SLEW_N = 0x3 - // .. ==> 0XF8000B5C[23:19] = 0x00000003U - // .. ==> MASK : 0x00F80000U VAL : 0x00180000U - // .. GTL = 0x0 - // .. ==> 0XF8000B5C[26:24] = 0x00000000U - // .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. RTERM = 0x0 - // .. ==> 0XF8000B5C[31:27] = 0x00000000U - // .. ==> MASK : 0xF8000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B5C, 0xFFFFFFFFU ,0x0018C61CU), - // .. DRIVE_P = 0x1c - // .. ==> 0XF8000B60[6:0] = 0x0000001CU - // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU - // .. DRIVE_N = 0xc - // .. ==> 0XF8000B60[13:7] = 0x0000000CU - // .. ==> MASK : 0x00003F80U VAL : 0x00000600U - // .. SLEW_P = 0x6 - // .. ==> 0XF8000B60[18:14] = 0x00000006U - // .. ==> MASK : 0x0007C000U VAL : 0x00018000U - // .. SLEW_N = 0x1f - // .. ==> 0XF8000B60[23:19] = 0x0000001FU - // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U - // .. GTL = 0x0 - // .. ==> 0XF8000B60[26:24] = 0x00000000U - // .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. RTERM = 0x0 - // .. ==> 0XF8000B60[31:27] = 0x00000000U - // .. ==> MASK : 0xF8000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B60, 0xFFFFFFFFU ,0x00F9861CU), - // .. DRIVE_P = 0x1c - // .. ==> 0XF8000B64[6:0] = 0x0000001CU - // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU - // .. DRIVE_N = 0xc - // .. ==> 0XF8000B64[13:7] = 0x0000000CU - // .. ==> MASK : 0x00003F80U VAL : 0x00000600U - // .. SLEW_P = 0x6 - // .. ==> 0XF8000B64[18:14] = 0x00000006U - // .. ==> MASK : 0x0007C000U VAL : 0x00018000U - // .. SLEW_N = 0x1f - // .. ==> 0XF8000B64[23:19] = 0x0000001FU - // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U - // .. GTL = 0x0 - // .. ==> 0XF8000B64[26:24] = 0x00000000U - // .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. RTERM = 0x0 - // .. ==> 0XF8000B64[31:27] = 0x00000000U - // .. ==> MASK : 0xF8000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B64, 0xFFFFFFFFU ,0x00F9861CU), - // .. DRIVE_P = 0x1c - // .. ==> 0XF8000B68[6:0] = 0x0000001CU - // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU - // .. DRIVE_N = 0xc - // .. ==> 0XF8000B68[13:7] = 0x0000000CU - // .. ==> MASK : 0x00003F80U VAL : 0x00000600U - // .. SLEW_P = 0x6 - // .. ==> 0XF8000B68[18:14] = 0x00000006U - // .. ==> MASK : 0x0007C000U VAL : 0x00018000U - // .. SLEW_N = 0x1f - // .. ==> 0XF8000B68[23:19] = 0x0000001FU - // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U - // .. GTL = 0x0 - // .. ==> 0XF8000B68[26:24] = 0x00000000U - // .. ==> MASK : 0x07000000U VAL : 0x00000000U - // .. RTERM = 0x0 - // .. ==> 0XF8000B68[31:27] = 0x00000000U - // .. ==> MASK : 0xF8000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B68, 0xFFFFFFFFU ,0x00F9861CU), - // .. VREF_INT_EN = 0x0 - // .. ==> 0XF8000B6C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. VREF_SEL = 0x0 - // .. ==> 0XF8000B6C[4:1] = 0x00000000U - // .. ==> MASK : 0x0000001EU VAL : 0x00000000U - // .. VREF_EXT_EN = 0x3 - // .. ==> 0XF8000B6C[6:5] = 0x00000003U - // .. ==> MASK : 0x00000060U VAL : 0x00000060U - // .. VREF_PULLUP_EN = 0x0 - // .. ==> 0XF8000B6C[8:7] = 0x00000000U - // .. ==> MASK : 0x00000180U VAL : 0x00000000U - // .. REFIO_EN = 0x1 - // .. ==> 0XF8000B6C[9:9] = 0x00000001U - // .. ==> MASK : 0x00000200U VAL : 0x00000200U - // .. REFIO_PULLUP_EN = 0x0 - // .. ==> 0XF8000B6C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DRST_B_PULLUP_EN = 0x0 - // .. ==> 0XF8000B6C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. CKE_PULLUP_EN = 0x0 - // .. ==> 0XF8000B6C[14:14] = 0x00000000U - // .. ==> MASK : 0x00004000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000B6C, 0x000073FFU ,0x00000260U), - // .. .. START: ASSERT RESET - // .. .. RESET = 1 - // .. .. ==> 0XF8000B70[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. VRN_OUT = 0x1 - // .. .. ==> 0XF8000B70[5:5] = 0x00000001U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000020U - // .. .. - EMIT_MASKWRITE(0XF8000B70, 0x00000021U ,0x00000021U), - // .. .. FINISH: ASSERT RESET - // .. .. START: DEASSERT RESET - // .. .. RESET = 0 - // .. .. ==> 0XF8000B70[0:0] = 0x00000000U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. .. VRN_OUT = 0x1 - // .. .. ==> 0XF8000B70[5:5] = 0x00000001U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000020U - // .. .. - EMIT_MASKWRITE(0XF8000B70, 0x00000021U ,0x00000020U), - // .. .. FINISH: DEASSERT RESET - // .. .. RESET = 0x1 - // .. .. ==> 0XF8000B70[0:0] = 0x00000001U - // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. .. ENABLE = 0x1 - // .. .. ==> 0XF8000B70[1:1] = 0x00000001U - // .. .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. .. VRP_TRI = 0x0 - // .. .. ==> 0XF8000B70[2:2] = 0x00000000U - // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. .. VRN_TRI = 0x0 - // .. .. ==> 0XF8000B70[3:3] = 0x00000000U - // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. .. VRP_OUT = 0x0 - // .. .. ==> 0XF8000B70[4:4] = 0x00000000U - // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U - // .. .. VRN_OUT = 0x1 - // .. .. ==> 0XF8000B70[5:5] = 0x00000001U - // .. .. ==> MASK : 0x00000020U VAL : 0x00000020U - // .. .. NREF_OPT1 = 0x0 - // .. .. ==> 0XF8000B70[7:6] = 0x00000000U - // .. .. ==> MASK : 0x000000C0U VAL : 0x00000000U - // .. .. NREF_OPT2 = 0x0 - // .. .. ==> 0XF8000B70[10:8] = 0x00000000U - // .. .. ==> MASK : 0x00000700U VAL : 0x00000000U - // .. .. NREF_OPT4 = 0x1 - // .. .. ==> 0XF8000B70[13:11] = 0x00000001U - // .. .. ==> MASK : 0x00003800U VAL : 0x00000800U - // .. .. PREF_OPT1 = 0x0 - // .. .. ==> 0XF8000B70[16:14] = 0x00000000U - // .. .. ==> MASK : 0x0001C000U VAL : 0x00000000U - // .. .. PREF_OPT2 = 0x0 - // .. .. ==> 0XF8000B70[19:17] = 0x00000000U - // .. .. ==> MASK : 0x000E0000U VAL : 0x00000000U - // .. .. UPDATE_CONTROL = 0x0 - // .. .. ==> 0XF8000B70[20:20] = 0x00000000U - // .. .. ==> MASK : 0x00100000U VAL : 0x00000000U - // .. .. INIT_COMPLETE = 0x0 - // .. .. ==> 0XF8000B70[21:21] = 0x00000000U - // .. .. ==> MASK : 0x00200000U VAL : 0x00000000U - // .. .. TST_CLK = 0x0 - // .. .. ==> 0XF8000B70[22:22] = 0x00000000U - // .. .. ==> MASK : 0x00400000U VAL : 0x00000000U - // .. .. TST_HLN = 0x0 - // .. .. ==> 0XF8000B70[23:23] = 0x00000000U - // .. .. ==> MASK : 0x00800000U VAL : 0x00000000U - // .. .. TST_HLP = 0x0 - // .. .. ==> 0XF8000B70[24:24] = 0x00000000U - // .. .. ==> MASK : 0x01000000U VAL : 0x00000000U - // .. .. TST_RST = 0x0 - // .. .. ==> 0XF8000B70[25:25] = 0x00000000U - // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U - // .. .. INT_DCI_EN = 0x0 - // .. .. ==> 0XF8000B70[26:26] = 0x00000000U - // .. .. ==> MASK : 0x04000000U VAL : 0x00000000U - // .. .. - EMIT_MASKWRITE(0XF8000B70, 0x07FFFFFFU ,0x00000823U), - // .. FINISH: DDRIOB SETTINGS - // .. START: MIO PROGRAMMING - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000700[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000700[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000700[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000700[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000700[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF8000700[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000700[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000700[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000700[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000700, 0x00003FFFU ,0x00001600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000704[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000704[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000704[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000704[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000704[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000704[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000704[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000704[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000704[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000704, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000708[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000708[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000708[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000708[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000708[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000708[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000708[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000708[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000708[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000708, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800070C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF800070C[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF800070C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800070C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800070C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800070C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF800070C[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF800070C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800070C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800070C, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000710[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000710[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000710[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000710[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000710[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000710[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000710[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000710[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000710[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000710, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000714[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000714[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000714[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000714[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000714[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000714[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000714[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000714[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000714[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000714, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000718[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000718[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000718[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000718[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000718[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000718[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000718[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000718[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000718[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000718, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800071C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800071C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF800071C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800071C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800071C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF800071C[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF800071C[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF800071C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800071C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800071C, 0x00003FFFU ,0x00000600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000720[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000720[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000720[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000720[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000720[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000720[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 3 - // .. ==> 0XF8000720[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 0 - // .. ==> 0XF8000720[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000720[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000720, 0x00003FFFU ,0x00000702U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000724[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000724[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000724[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000724[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000724[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF8000724[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000724[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000724[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000724[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000724, 0x00003FFFU ,0x00001600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000728[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000728[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000728[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000728[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 2 - // .. ==> 0XF8000728[7:5] = 0x00000002U - // .. ==> MASK : 0x000000E0U VAL : 0x00000040U - // .. Speed = 0 - // .. ==> 0XF8000728[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000728[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000728[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000728[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000728, 0x00003FFFU ,0x00001640U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800072C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800072C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF800072C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800072C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 2 - // .. ==> 0XF800072C[7:5] = 0x00000002U - // .. ==> MASK : 0x000000E0U VAL : 0x00000040U - // .. Speed = 0 - // .. ==> 0XF800072C[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF800072C[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF800072C[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF800072C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800072C, 0x00003FFFU ,0x00001640U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000730[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000730[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000730[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000730[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 2 - // .. ==> 0XF8000730[7:5] = 0x00000002U - // .. ==> MASK : 0x000000E0U VAL : 0x00000040U - // .. Speed = 0 - // .. ==> 0XF8000730[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000730[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000730[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000730[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000730, 0x00003FFFU ,0x00001640U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000734[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000734[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000734[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000734[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 2 - // .. ==> 0XF8000734[7:5] = 0x00000002U - // .. ==> MASK : 0x000000E0U VAL : 0x00000040U - // .. Speed = 0 - // .. ==> 0XF8000734[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000734[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000734[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000734[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000734, 0x00003FFFU ,0x00001640U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000738[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000738[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF8000738[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000738[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000738[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF8000738[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF8000738[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF8000738[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000738[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000738, 0x00003FFFU ,0x00001600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800073C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800073C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF800073C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800073C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800073C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF800073C[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 3 - // .. ==> 0XF800073C[11:9] = 0x00000003U - // .. ==> MASK : 0x00000E00U VAL : 0x00000600U - // .. PULLUP = 1 - // .. ==> 0XF800073C[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF800073C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800073C, 0x00003FFFU ,0x00001600U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000740[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000740[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000740[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000740[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000740[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000740[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000740[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000740[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000740[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000740, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000744[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000744[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000744[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000744[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000744[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000744[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000744[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000744[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000744[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000744, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000748[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000748[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000748[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000748[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000748[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000748[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000748[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000748[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000748[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000748, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800074C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF800074C[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF800074C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800074C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800074C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800074C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF800074C[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF800074C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF800074C[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF800074C, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000750[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000750[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000750[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000750[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000750[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000750[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000750[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000750[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000750[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000750, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000754[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 1 - // .. ==> 0XF8000754[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000754[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000754[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000754[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000754[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000754[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000754[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 1 - // .. ==> 0XF8000754[13:13] = 0x00000001U - // .. ==> MASK : 0x00002000U VAL : 0x00002000U - // .. - EMIT_MASKWRITE(0XF8000754, 0x00003FFFU ,0x00002902U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000758[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF8000758[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000758[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000758[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000758[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000758[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000758[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000758[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000758[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000758, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF800075C[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF800075C[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF800075C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800075C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800075C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800075C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF800075C[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF800075C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800075C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800075C, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000760[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF8000760[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000760[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000760[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000760[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000760[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000760[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000760[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000760[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000760, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000764[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF8000764[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000764[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000764[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000764[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000764[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000764[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000764[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000764[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000764, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000768[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF8000768[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF8000768[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF8000768[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000768[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000768[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF8000768[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF8000768[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000768[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000768, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF800076C[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 1 - // .. ==> 0XF800076C[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. L1_SEL = 0 - // .. ==> 0XF800076C[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF800076C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800076C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800076C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 4 - // .. ==> 0XF800076C[11:9] = 0x00000004U - // .. ==> MASK : 0x00000E00U VAL : 0x00000800U - // .. PULLUP = 0 - // .. ==> 0XF800076C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800076C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800076C, 0x00003FFFU ,0x00000903U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000770[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000770[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000770[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000770[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000770[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000770[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000770[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000770[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000770[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000770, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000774[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 0 - // .. ==> 0XF8000774[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000774[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000774[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000774[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000774[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000774[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000774[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000774[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000774, 0x00003FFFU ,0x00000305U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000778[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000778[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000778[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000778[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000778[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000778[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000778[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000778[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000778[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000778, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF800077C[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 0 - // .. ==> 0XF800077C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF800077C[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF800077C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800077C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800077C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF800077C[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF800077C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800077C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800077C, 0x00003FFFU ,0x00000305U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000780[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000780[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000780[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000780[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000780[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000780[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000780[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000780[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000780[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000780, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000784[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000784[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000784[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000784[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000784[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000784[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000784[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000784[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000784[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000784, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000788[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000788[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000788[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000788[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000788[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000788[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000788[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000788[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000788[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000788, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800078C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800078C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF800078C[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF800078C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800078C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800078C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF800078C[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF800078C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800078C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800078C, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF8000790[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 0 - // .. ==> 0XF8000790[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000790[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000790[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000790[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000790[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000790[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000790[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000790[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000790, 0x00003FFFU ,0x00000305U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000794[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000794[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000794[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000794[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000794[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000794[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000794[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000794[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000794[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000794, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF8000798[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF8000798[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF8000798[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF8000798[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF8000798[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF8000798[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF8000798[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF8000798[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF8000798[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000798, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF800079C[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF800079C[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 1 - // .. ==> 0XF800079C[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. L2_SEL = 0 - // .. ==> 0XF800079C[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF800079C[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 1 - // .. ==> 0XF800079C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF800079C[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF800079C[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF800079C[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF800079C, 0x00003FFFU ,0x00000304U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007A0[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007A0[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007A0[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007A0[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007A0[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007A0[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007A0[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007A0[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007A0[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007A0, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007A4[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007A4[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007A4[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007A4[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007A4[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007A4[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007A4[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007A4[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007A4[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007A4, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007A8[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007A8[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007A8[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007A8[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007A8[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007A8[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007A8[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007A8[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007A8[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007A8, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007AC[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007AC[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007AC[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007AC[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007AC[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007AC[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007AC[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007AC[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007AC[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007AC, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007B0[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007B0[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007B0[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007B0[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007B0[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007B0[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007B0[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007B0[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007B0[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007B0, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007B4[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007B4[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007B4[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007B4[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 4 - // .. ==> 0XF80007B4[7:5] = 0x00000004U - // .. ==> MASK : 0x000000E0U VAL : 0x00000080U - // .. Speed = 1 - // .. ==> 0XF80007B4[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. IO_Type = 1 - // .. ==> 0XF80007B4[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007B4[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007B4[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007B4, 0x00003FFFU ,0x00000380U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007B8[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007B8[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007B8[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007B8[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007B8[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007B8[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007B8[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 1 - // .. ==> 0XF80007B8[12:12] = 0x00000001U - // .. ==> MASK : 0x00001000U VAL : 0x00001000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007B8[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007B8, 0x00003FFFU ,0x00001200U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF80007BC[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. Speed = 0 - // .. ==> 0XF80007BC[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007BC[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007BC[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007BC[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007BC, 0x00003F01U ,0x00000201U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007C0[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007C0[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007C0[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007C0[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 7 - // .. ==> 0XF80007C0[7:5] = 0x00000007U - // .. ==> MASK : 0x000000E0U VAL : 0x000000E0U - // .. Speed = 0 - // .. ==> 0XF80007C0[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007C0[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007C0[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007C0[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007C0, 0x00003FFFU ,0x000002E0U), - // .. TRI_ENABLE = 1 - // .. ==> 0XF80007C4[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. L0_SEL = 0 - // .. ==> 0XF80007C4[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007C4[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007C4[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 7 - // .. ==> 0XF80007C4[7:5] = 0x00000007U - // .. ==> MASK : 0x000000E0U VAL : 0x000000E0U - // .. Speed = 0 - // .. ==> 0XF80007C4[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007C4[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007C4[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007C4[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007C4, 0x00003FFFU ,0x000002E1U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007C8[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007C8[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007C8[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007C8[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007C8[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007C8[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007C8[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007C8[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007C8[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007C8, 0x00003FFFU ,0x00000200U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007CC[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007CC[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007CC[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007CC[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007CC[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007CC[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007CC[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007CC[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007CC[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007CC, 0x00003FFFU ,0x00000200U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007D0[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007D0[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007D0[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007D0[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007D0[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007D0[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007D0[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007D0[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007D0[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007D0, 0x00003FFFU ,0x00000200U), - // .. TRI_ENABLE = 0 - // .. ==> 0XF80007D4[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. L0_SEL = 0 - // .. ==> 0XF80007D4[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. L1_SEL = 0 - // .. ==> 0XF80007D4[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. L2_SEL = 0 - // .. ==> 0XF80007D4[4:3] = 0x00000000U - // .. ==> MASK : 0x00000018U VAL : 0x00000000U - // .. L3_SEL = 0 - // .. ==> 0XF80007D4[7:5] = 0x00000000U - // .. ==> MASK : 0x000000E0U VAL : 0x00000000U - // .. Speed = 0 - // .. ==> 0XF80007D4[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. IO_Type = 1 - // .. ==> 0XF80007D4[11:9] = 0x00000001U - // .. ==> MASK : 0x00000E00U VAL : 0x00000200U - // .. PULLUP = 0 - // .. ==> 0XF80007D4[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. DisableRcvr = 0 - // .. ==> 0XF80007D4[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF80007D4, 0x00003FFFU ,0x00000200U), - // .. SDIO0_WP_SEL = 55 - // .. ==> 0XF8000830[5:0] = 0x00000037U - // .. ==> MASK : 0x0000003FU VAL : 0x00000037U - // .. SDIO0_CD_SEL = 47 - // .. ==> 0XF8000830[21:16] = 0x0000002FU - // .. ==> MASK : 0x003F0000U VAL : 0x002F0000U - // .. - EMIT_MASKWRITE(0XF8000830, 0x003F003FU ,0x002F0037U), - // .. FINISH: MIO PROGRAMMING - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_peripherals_init_data_1_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: DDR TERM/IBUF_DISABLE_MODE SETTINGS - // .. IBUF_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B48[7:7] = 0x00000001U - // .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. TERM_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B48[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. - EMIT_MASKWRITE(0XF8000B48, 0x00000180U ,0x00000180U), - // .. IBUF_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B4C[7:7] = 0x00000001U - // .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. TERM_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B4C[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. - EMIT_MASKWRITE(0XF8000B4C, 0x00000180U ,0x00000180U), - // .. IBUF_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B50[7:7] = 0x00000001U - // .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. TERM_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B50[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. - EMIT_MASKWRITE(0XF8000B50, 0x00000180U ,0x00000180U), - // .. IBUF_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B54[7:7] = 0x00000001U - // .. ==> MASK : 0x00000080U VAL : 0x00000080U - // .. TERM_DISABLE_MODE = 0x1 - // .. ==> 0XF8000B54[8:8] = 0x00000001U - // .. ==> MASK : 0x00000100U VAL : 0x00000100U - // .. - EMIT_MASKWRITE(0XF8000B54, 0x00000180U ,0x00000180U), - // .. FINISH: DDR TERM/IBUF_DISABLE_MODE SETTINGS - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // .. START: SRAM/NOR SET OPMODE - // .. FINISH: SRAM/NOR SET OPMODE - // .. START: UART REGISTERS - // .. BDIV = 0x6 - // .. ==> 0XE0001034[7:0] = 0x00000006U - // .. ==> MASK : 0x000000FFU VAL : 0x00000006U - // .. - EMIT_MASKWRITE(0XE0001034, 0x000000FFU ,0x00000006U), - // .. CD = 0x7c - // .. ==> 0XE0001018[15:0] = 0x0000007CU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000007CU - // .. - EMIT_MASKWRITE(0XE0001018, 0x0000FFFFU ,0x0000007CU), - // .. STPBRK = 0x0 - // .. ==> 0XE0001000[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. STTBRK = 0x0 - // .. ==> 0XE0001000[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. RSTTO = 0x0 - // .. ==> 0XE0001000[6:6] = 0x00000000U - // .. ==> MASK : 0x00000040U VAL : 0x00000000U - // .. TXDIS = 0x0 - // .. ==> 0XE0001000[5:5] = 0x00000000U - // .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. TXEN = 0x1 - // .. ==> 0XE0001000[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. RXDIS = 0x0 - // .. ==> 0XE0001000[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. RXEN = 0x1 - // .. ==> 0XE0001000[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. TXRES = 0x1 - // .. ==> 0XE0001000[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. RXRES = 0x1 - // .. ==> 0XE0001000[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. - EMIT_MASKWRITE(0XE0001000, 0x000001FFU ,0x00000017U), - // .. IRMODE = 0x0 - // .. ==> 0XE0001004[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. UCLKEN = 0x0 - // .. ==> 0XE0001004[10:10] = 0x00000000U - // .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. CHMODE = 0x0 - // .. ==> 0XE0001004[9:8] = 0x00000000U - // .. ==> MASK : 0x00000300U VAL : 0x00000000U - // .. NBSTOP = 0x0 - // .. ==> 0XE0001004[7:6] = 0x00000000U - // .. ==> MASK : 0x000000C0U VAL : 0x00000000U - // .. PAR = 0x4 - // .. ==> 0XE0001004[5:3] = 0x00000004U - // .. ==> MASK : 0x00000038U VAL : 0x00000020U - // .. CHRL = 0x0 - // .. ==> 0XE0001004[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. CLKS = 0x0 - // .. ==> 0XE0001004[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XE0001004, 0x00000FFFU ,0x00000020U), - // .. BDIV = 0x6 - // .. ==> 0XE0000034[7:0] = 0x00000006U - // .. ==> MASK : 0x000000FFU VAL : 0x00000006U - // .. - EMIT_MASKWRITE(0XE0000034, 0x000000FFU ,0x00000006U), - // .. CD = 0x7c - // .. ==> 0XE0000018[15:0] = 0x0000007CU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000007CU - // .. - EMIT_MASKWRITE(0XE0000018, 0x0000FFFFU ,0x0000007CU), - // .. STPBRK = 0x0 - // .. ==> 0XE0000000[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. STTBRK = 0x0 - // .. ==> 0XE0000000[7:7] = 0x00000000U - // .. ==> MASK : 0x00000080U VAL : 0x00000000U - // .. RSTTO = 0x0 - // .. ==> 0XE0000000[6:6] = 0x00000000U - // .. ==> MASK : 0x00000040U VAL : 0x00000000U - // .. TXDIS = 0x0 - // .. ==> 0XE0000000[5:5] = 0x00000000U - // .. ==> MASK : 0x00000020U VAL : 0x00000000U - // .. TXEN = 0x1 - // .. ==> 0XE0000000[4:4] = 0x00000001U - // .. ==> MASK : 0x00000010U VAL : 0x00000010U - // .. RXDIS = 0x0 - // .. ==> 0XE0000000[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. RXEN = 0x1 - // .. ==> 0XE0000000[2:2] = 0x00000001U - // .. ==> MASK : 0x00000004U VAL : 0x00000004U - // .. TXRES = 0x1 - // .. ==> 0XE0000000[1:1] = 0x00000001U - // .. ==> MASK : 0x00000002U VAL : 0x00000002U - // .. RXRES = 0x1 - // .. ==> 0XE0000000[0:0] = 0x00000001U - // .. ==> MASK : 0x00000001U VAL : 0x00000001U - // .. - EMIT_MASKWRITE(0XE0000000, 0x000001FFU ,0x00000017U), - // .. IRMODE = 0x0 - // .. ==> 0XE0000004[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. UCLKEN = 0x0 - // .. ==> 0XE0000004[10:10] = 0x00000000U - // .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. CHMODE = 0x0 - // .. ==> 0XE0000004[9:8] = 0x00000000U - // .. ==> MASK : 0x00000300U VAL : 0x00000000U - // .. NBSTOP = 0x0 - // .. ==> 0XE0000004[7:6] = 0x00000000U - // .. ==> MASK : 0x000000C0U VAL : 0x00000000U - // .. PAR = 0x4 - // .. ==> 0XE0000004[5:3] = 0x00000004U - // .. ==> MASK : 0x00000038U VAL : 0x00000020U - // .. CHRL = 0x0 - // .. ==> 0XE0000004[2:1] = 0x00000000U - // .. ==> MASK : 0x00000006U VAL : 0x00000000U - // .. CLKS = 0x0 - // .. ==> 0XE0000004[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XE0000004, 0x00000FFFU ,0x00000020U), - // .. FINISH: UART REGISTERS - // .. START: QSPI REGISTERS - // .. Holdb_dr = 1 - // .. ==> 0XE000D000[19:19] = 0x00000001U - // .. ==> MASK : 0x00080000U VAL : 0x00080000U - // .. - EMIT_MASKWRITE(0XE000D000, 0x00080000U ,0x00080000U), - // .. FINISH: QSPI REGISTERS - // .. START: PL POWER ON RESET REGISTERS - // .. PCFG_POR_CNT_4K = 0 - // .. ==> 0XF8007000[29:29] = 0x00000000U - // .. ==> MASK : 0x20000000U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8007000, 0x20000000U ,0x00000000U), - // .. FINISH: PL POWER ON RESET REGISTERS - // .. START: SMC TIMING CALCULATION REGISTER UPDATE - // .. .. START: NAND SET CYCLE - // .. .. FINISH: NAND SET CYCLE - // .. .. START: OPMODE - // .. .. FINISH: OPMODE - // .. .. START: DIRECT COMMAND - // .. .. FINISH: DIRECT COMMAND - // .. .. START: SRAM/NOR CS0 SET CYCLE - // .. .. FINISH: SRAM/NOR CS0 SET CYCLE - // .. .. START: DIRECT COMMAND - // .. .. FINISH: DIRECT COMMAND - // .. .. START: NOR CS0 BASE ADDRESS - // .. .. FINISH: NOR CS0 BASE ADDRESS - // .. .. START: SRAM/NOR CS1 SET CYCLE - // .. .. FINISH: SRAM/NOR CS1 SET CYCLE - // .. .. START: DIRECT COMMAND - // .. .. FINISH: DIRECT COMMAND - // .. .. START: NOR CS1 BASE ADDRESS - // .. .. FINISH: NOR CS1 BASE ADDRESS - // .. .. START: USB RESET - // .. .. .. START: USB0 RESET - // .. .. .. .. START: DIR MODE BANK 0 - // .. .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. .. START: DIR MODE BANK 1 - // .. .. .. .. DIRECTION_1 = 0x4000 - // .. .. .. .. ==> 0XE000A244[21:0] = 0x00004000U - // .. .. .. .. ==> MASK : 0x003FFFFFU VAL : 0x00004000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A244, 0x003FFFFFU ,0x00004000U), - // .. .. .. .. FINISH: DIR MODE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. MASK_1_LSW = 0xbfff - // .. .. .. .. ==> 0XE000A008[31:16] = 0x0000BFFFU - // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xBFFF0000U - // .. .. .. .. DATA_1_LSW = 0x4000 - // .. .. .. .. ==> 0XE000A008[15:0] = 0x00004000U - // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00004000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A008, 0xFFFFFFFFU ,0xBFFF4000U), - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. .. .. START: OUTPUT ENABLE BANK 1 - // .. .. .. .. OP_ENABLE_1 = 0x4000 - // .. .. .. .. ==> 0XE000A248[21:0] = 0x00004000U - // .. .. .. .. ==> MASK : 0x003FFFFFU VAL : 0x00004000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A248, 0x003FFFFFU ,0x00004000U), - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. MASK_1_LSW = 0xbfff - // .. .. .. .. ==> 0XE000A008[31:16] = 0x0000BFFFU - // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xBFFF0000U - // .. .. .. .. DATA_1_LSW = 0x0 - // .. .. .. .. ==> 0XE000A008[15:0] = 0x00000000U - // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A008, 0xFFFFFFFFU ,0xBFFF0000U), - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. MASK_1_LSW = 0xbfff - // .. .. .. .. ==> 0XE000A008[31:16] = 0x0000BFFFU - // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xBFFF0000U - // .. .. .. .. DATA_1_LSW = 0x4000 - // .. .. .. .. ==> 0XE000A008[15:0] = 0x00004000U - // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00004000U - // .. .. .. .. - EMIT_MASKWRITE(0XE000A008, 0xFFFFFFFFU ,0xBFFF4000U), - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: USB0 RESET - // .. .. .. START: USB1 RESET - // .. .. .. .. START: DIR MODE BANK 0 - // .. .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. .. START: DIR MODE BANK 1 - // .. .. .. .. FINISH: DIR MODE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. .. .. START: OUTPUT ENABLE BANK 1 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: USB1 RESET - // .. .. FINISH: USB RESET - // .. .. START: ENET RESET - // .. .. .. START: ENET0 RESET - // .. .. .. .. START: DIR MODE BANK 0 - // .. .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. .. START: DIR MODE BANK 1 - // .. .. .. .. FINISH: DIR MODE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. .. .. START: OUTPUT ENABLE BANK 1 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: ENET0 RESET - // .. .. .. START: ENET1 RESET - // .. .. .. .. START: DIR MODE BANK 0 - // .. .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. .. START: DIR MODE BANK 1 - // .. .. .. .. FINISH: DIR MODE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. .. .. START: OUTPUT ENABLE BANK 1 - // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1 - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: ENET1 RESET - // .. .. FINISH: ENET RESET - // .. .. START: I2C RESET - // .. .. .. START: I2C0 RESET - // .. .. .. .. START: DIR MODE GPIO BANK0 - // .. .. .. .. FINISH: DIR MODE GPIO BANK0 - // .. .. .. .. START: DIR MODE GPIO BANK1 - // .. .. .. .. FINISH: DIR MODE GPIO BANK1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE - // .. .. .. .. FINISH: OUTPUT ENABLE - // .. .. .. .. START: OUTPUT ENABLE - // .. .. .. .. FINISH: OUTPUT ENABLE - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: I2C0 RESET - // .. .. .. START: I2C1 RESET - // .. .. .. .. START: DIR MODE GPIO BANK0 - // .. .. .. .. FINISH: DIR MODE GPIO BANK0 - // .. .. .. .. START: DIR MODE GPIO BANK1 - // .. .. .. .. FINISH: DIR MODE GPIO BANK1 - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. START: OUTPUT ENABLE - // .. .. .. .. FINISH: OUTPUT ENABLE - // .. .. .. .. START: OUTPUT ENABLE - // .. .. .. .. FINISH: OUTPUT ENABLE - // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48] - // .. .. .. .. START: ADD 1 MS DELAY - // .. .. .. .. - EMIT_MASKDELAY(0XF8F00200, 1), - // .. .. .. .. FINISH: ADD 1 MS DELAY - // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16] - // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32] - // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48] - // .. .. .. FINISH: I2C1 RESET - // .. .. FINISH: I2C RESET - // .. .. START: NOR CHIP SELECT - // .. .. .. START: DIR MODE BANK 0 - // .. .. .. FINISH: DIR MODE BANK 0 - // .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0] - // .. .. .. START: OUTPUT ENABLE BANK 0 - // .. .. .. FINISH: OUTPUT ENABLE BANK 0 - // .. .. FINISH: NOR CHIP SELECT - // .. FINISH: SMC TIMING CALCULATION REGISTER UPDATE - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_post_config_1_0[] = { - // START: top - // .. START: SLCR SETTINGS - // .. UNLOCK_KEY = 0XDF0D - // .. ==> 0XF8000008[15:0] = 0x0000DF0DU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU - // .. - EMIT_WRITE(0XF8000008, 0x0000DF0DU), - // .. FINISH: SLCR SETTINGS - // .. START: ENABLING LEVEL SHIFTER - // .. USER_INP_ICT_EN_0 = 3 - // .. ==> 0XF8000900[1:0] = 0x00000003U - // .. ==> MASK : 0x00000003U VAL : 0x00000003U - // .. USER_INP_ICT_EN_1 = 3 - // .. ==> 0XF8000900[3:2] = 0x00000003U - // .. ==> MASK : 0x0000000CU VAL : 0x0000000CU - // .. - EMIT_MASKWRITE(0XF8000900, 0x0000000FU ,0x0000000FU), - // .. FINISH: ENABLING LEVEL SHIFTER - // .. START: FPGA RESETS TO 0 - // .. reserved_3 = 0 - // .. ==> 0XF8000240[31:25] = 0x00000000U - // .. ==> MASK : 0xFE000000U VAL : 0x00000000U - // .. FPGA_ACP_RST = 0 - // .. ==> 0XF8000240[24:24] = 0x00000000U - // .. ==> MASK : 0x01000000U VAL : 0x00000000U - // .. FPGA_AXDS3_RST = 0 - // .. ==> 0XF8000240[23:23] = 0x00000000U - // .. ==> MASK : 0x00800000U VAL : 0x00000000U - // .. FPGA_AXDS2_RST = 0 - // .. ==> 0XF8000240[22:22] = 0x00000000U - // .. ==> MASK : 0x00400000U VAL : 0x00000000U - // .. FPGA_AXDS1_RST = 0 - // .. ==> 0XF8000240[21:21] = 0x00000000U - // .. ==> MASK : 0x00200000U VAL : 0x00000000U - // .. FPGA_AXDS0_RST = 0 - // .. ==> 0XF8000240[20:20] = 0x00000000U - // .. ==> MASK : 0x00100000U VAL : 0x00000000U - // .. reserved_2 = 0 - // .. ==> 0XF8000240[19:18] = 0x00000000U - // .. ==> MASK : 0x000C0000U VAL : 0x00000000U - // .. FSSW1_FPGA_RST = 0 - // .. ==> 0XF8000240[17:17] = 0x00000000U - // .. ==> MASK : 0x00020000U VAL : 0x00000000U - // .. FSSW0_FPGA_RST = 0 - // .. ==> 0XF8000240[16:16] = 0x00000000U - // .. ==> MASK : 0x00010000U VAL : 0x00000000U - // .. reserved_1 = 0 - // .. ==> 0XF8000240[15:14] = 0x00000000U - // .. ==> MASK : 0x0000C000U VAL : 0x00000000U - // .. FPGA_FMSW1_RST = 0 - // .. ==> 0XF8000240[13:13] = 0x00000000U - // .. ==> MASK : 0x00002000U VAL : 0x00000000U - // .. FPGA_FMSW0_RST = 0 - // .. ==> 0XF8000240[12:12] = 0x00000000U - // .. ==> MASK : 0x00001000U VAL : 0x00000000U - // .. FPGA_DMA3_RST = 0 - // .. ==> 0XF8000240[11:11] = 0x00000000U - // .. ==> MASK : 0x00000800U VAL : 0x00000000U - // .. FPGA_DMA2_RST = 0 - // .. ==> 0XF8000240[10:10] = 0x00000000U - // .. ==> MASK : 0x00000400U VAL : 0x00000000U - // .. FPGA_DMA1_RST = 0 - // .. ==> 0XF8000240[9:9] = 0x00000000U - // .. ==> MASK : 0x00000200U VAL : 0x00000000U - // .. FPGA_DMA0_RST = 0 - // .. ==> 0XF8000240[8:8] = 0x00000000U - // .. ==> MASK : 0x00000100U VAL : 0x00000000U - // .. reserved = 0 - // .. ==> 0XF8000240[7:4] = 0x00000000U - // .. ==> MASK : 0x000000F0U VAL : 0x00000000U - // .. FPGA3_OUT_RST = 0 - // .. ==> 0XF8000240[3:3] = 0x00000000U - // .. ==> MASK : 0x00000008U VAL : 0x00000000U - // .. FPGA2_OUT_RST = 0 - // .. ==> 0XF8000240[2:2] = 0x00000000U - // .. ==> MASK : 0x00000004U VAL : 0x00000000U - // .. FPGA1_OUT_RST = 0 - // .. ==> 0XF8000240[1:1] = 0x00000000U - // .. ==> MASK : 0x00000002U VAL : 0x00000000U - // .. FPGA0_OUT_RST = 0 - // .. ==> 0XF8000240[0:0] = 0x00000000U - // .. ==> MASK : 0x00000001U VAL : 0x00000000U - // .. - EMIT_MASKWRITE(0XF8000240, 0xFFFFFFFFU ,0x00000000U), - // .. FINISH: FPGA RESETS TO 0 - // .. START: AFI REGISTERS - // .. .. START: AFI0 REGISTERS - // .. .. FINISH: AFI0 REGISTERS - // .. .. START: AFI1 REGISTERS - // .. .. FINISH: AFI1 REGISTERS - // .. .. START: AFI2 REGISTERS - // .. .. FINISH: AFI2 REGISTERS - // .. .. START: AFI3 REGISTERS - // .. .. FINISH: AFI3 REGISTERS - // .. FINISH: AFI REGISTERS - // .. START: LOCK IT BACK - // .. LOCK_KEY = 0X767B - // .. ==> 0XF8000004[15:0] = 0x0000767BU - // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU - // .. - EMIT_WRITE(0XF8000004, 0x0000767BU), - // .. FINISH: LOCK IT BACK - // FINISH: top - // - EMIT_EXIT(), - - // -}; - -unsigned long ps7_debug_1_0[] = { - // START: top - // .. START: CROSS TRIGGER CONFIGURATIONS - // .. .. START: UNLOCKING CTI REGISTERS - // .. .. KEY = 0XC5ACCE55 - // .. .. ==> 0XF8898FB0[31:0] = 0xC5ACCE55U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U - // .. .. - EMIT_WRITE(0XF8898FB0, 0xC5ACCE55U), - // .. .. KEY = 0XC5ACCE55 - // .. .. ==> 0XF8899FB0[31:0] = 0xC5ACCE55U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U - // .. .. - EMIT_WRITE(0XF8899FB0, 0xC5ACCE55U), - // .. .. KEY = 0XC5ACCE55 - // .. .. ==> 0XF8809FB0[31:0] = 0xC5ACCE55U - // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U - // .. .. - EMIT_WRITE(0XF8809FB0, 0xC5ACCE55U), - // .. .. FINISH: UNLOCKING CTI REGISTERS - // .. .. START: ENABLING CTI MODULES AND CHANNELS - // .. .. FINISH: ENABLING CTI MODULES AND CHANNELS - // .. .. START: MAPPING CPU0, CPU1 AND FTM EVENTS TO CTM CHANNELS - // .. .. FINISH: MAPPING CPU0, CPU1 AND FTM EVENTS TO CTM CHANNELS - // .. FINISH: CROSS TRIGGER CONFIGURATIONS - // FINISH: top - // - EMIT_EXIT(), - - // -}; - - -#include "xil_io.h" -#define PS7_MASK_POLL_TIME 100000000 - -char* -getPS7MessageInfo(unsigned key) { - - char* err_msg = ""; - switch (key) { - case PS7_INIT_SUCCESS: err_msg = "PS7 initialization successful"; break; - case PS7_INIT_CORRUPT: err_msg = "PS7 init Data Corrupted"; break; - case PS7_INIT_TIMEOUT: err_msg = "PS7 init mask poll timeout"; break; - case PS7_POLL_FAILED_DDR_INIT: err_msg = "Mask Poll failed for DDR Init"; break; - case PS7_POLL_FAILED_DMA: err_msg = "Mask Poll failed for PLL Init"; break; - case PS7_POLL_FAILED_PLL: err_msg = "Mask Poll failed for DMA done bit"; break; - default: err_msg = "Undefined error status"; break; - } - - return err_msg; -} - -unsigned long -ps7GetSiliconVersion () { - // Read PS version from MCTRL register [31:28] - unsigned long mask = 0xF0000000; - unsigned long *addr = (unsigned long*) 0XF8007080; - unsigned long ps_version = (*addr & mask) >> 28; - return ps_version; -} - -void mask_write (unsigned long add , unsigned long mask, unsigned long val ) { - volatile unsigned long *addr = (volatile unsigned long*) add; - *addr = ( val & mask ) | ( *addr & ~mask); - //xil_printf("MaskWrite : 0x%x--> 0x%x \n \r" ,add, *addr); -} - - -int mask_poll(unsigned long add , unsigned long mask ) { - volatile unsigned long *addr = (volatile unsigned long*) add; - int i = 0; - while (!(*addr & mask)) { - if (i == PS7_MASK_POLL_TIME) { - return -1; - } - i++; - } - return 1; - //xil_printf("MaskPoll : 0x%x --> 0x%x \n \r" , add, *addr); -} - -unsigned long mask_read(unsigned long add , unsigned long mask ) { - volatile unsigned long *addr = (volatile unsigned long*) add; - unsigned long val = (*addr & mask); - //xil_printf("MaskRead : 0x%x --> 0x%x \n \r" , add, val); - return val; -} - - - -int -ps7_config(unsigned long * ps7_config_init) -{ - unsigned long *ptr = ps7_config_init; - - unsigned long opcode; // current instruction .. - unsigned long args[16]; // no opcode has so many args ... - int numargs; // number of arguments of this instruction - int j; // general purpose index - - volatile unsigned long *addr; // some variable to make code readable - unsigned long val,mask; // some variable to make code readable - - int finish = -1 ; // loop while this is negative ! - int i = 0; // Timeout variable - - while( finish < 0 ) { - numargs = ptr[0] & 0xF; - opcode = ptr[0] >> 4; - - for( j = 0 ; j < numargs ; j ++ ) - args[j] = ptr[j+1]; - ptr += numargs + 1; - - - switch ( opcode ) { - - case OPCODE_EXIT: - finish = PS7_INIT_SUCCESS; - break; - - case OPCODE_CLEAR: - addr = (unsigned long*) args[0]; - *addr = 0; - break; - - case OPCODE_WRITE: - addr = (unsigned long*) args[0]; - val = args[1]; - *addr = val; - break; - - case OPCODE_MASKWRITE: - addr = (unsigned long*) args[0]; - mask = args[1]; - val = args[2]; - *addr = ( val & mask ) | ( *addr & ~mask); - break; - - case OPCODE_MASKPOLL: - addr = (unsigned long*) args[0]; - mask = args[1]; - i = 0; - while (!(*addr & mask)) { - if (i == PS7_MASK_POLL_TIME) { - finish = PS7_INIT_TIMEOUT; - break; - } - i++; - } - break; - case OPCODE_MASKDELAY: - addr = (unsigned long*) args[0]; - mask = args[1]; - int delay = get_number_of_cycles_for_delay(mask); - perf_reset_and_start_timer(); - while ((*addr < delay)) { - } - break; - default: - finish = PS7_INIT_CORRUPT; - break; - } - } - return finish; -} - -unsigned long *ps7_mio_init_data = ps7_mio_init_data_3_0; -unsigned long *ps7_pll_init_data = ps7_pll_init_data_3_0; -unsigned long *ps7_clock_init_data = ps7_clock_init_data_3_0; -unsigned long *ps7_ddr_init_data = ps7_ddr_init_data_3_0; -unsigned long *ps7_peripherals_init_data = ps7_peripherals_init_data_3_0; - -int -ps7_post_config() -{ - // Get the PS_VERSION on run time - unsigned long si_ver = ps7GetSiliconVersion (); - int ret = -1; - if (si_ver == PCW_SILICON_VERSION_1) { - ret = ps7_config (ps7_post_config_1_0); - if (ret != PS7_INIT_SUCCESS) return ret; - } else if (si_ver == PCW_SILICON_VERSION_2) { - ret = ps7_config (ps7_post_config_2_0); - if (ret != PS7_INIT_SUCCESS) return ret; - } else { - ret = ps7_config (ps7_post_config_3_0); - if (ret != PS7_INIT_SUCCESS) return ret; - } - return PS7_INIT_SUCCESS; -} - -int -ps7_debug() -{ - // Get the PS_VERSION on run time - unsigned long si_ver = ps7GetSiliconVersion (); - int ret = -1; - if (si_ver == PCW_SILICON_VERSION_1) { - ret = ps7_config (ps7_debug_1_0); - if (ret != PS7_INIT_SUCCESS) return ret; - } else if (si_ver == PCW_SILICON_VERSION_2) { - ret = ps7_config (ps7_debug_2_0); - if (ret != PS7_INIT_SUCCESS) return ret; - } else { - ret = ps7_config (ps7_debug_3_0); - if (ret != PS7_INIT_SUCCESS) return ret; - } - return PS7_INIT_SUCCESS; -} - - -int -ps7_init() -{ - // Get the PS_VERSION on run time - unsigned long si_ver = ps7GetSiliconVersion (); - int ret; - //int pcw_ver = 0; - - if (si_ver == PCW_SILICON_VERSION_1) { - ps7_mio_init_data = ps7_mio_init_data_1_0; - ps7_pll_init_data = ps7_pll_init_data_1_0; - ps7_clock_init_data = ps7_clock_init_data_1_0; - ps7_ddr_init_data = ps7_ddr_init_data_1_0; - ps7_peripherals_init_data = ps7_peripherals_init_data_1_0; - //pcw_ver = 1; - - } else if (si_ver == PCW_SILICON_VERSION_2) { - ps7_mio_init_data = ps7_mio_init_data_2_0; - ps7_pll_init_data = ps7_pll_init_data_2_0; - ps7_clock_init_data = ps7_clock_init_data_2_0; - ps7_ddr_init_data = ps7_ddr_init_data_2_0; - ps7_peripherals_init_data = ps7_peripherals_init_data_2_0; - //pcw_ver = 2; - - } else { - ps7_mio_init_data = ps7_mio_init_data_3_0; - ps7_pll_init_data = ps7_pll_init_data_3_0; - ps7_clock_init_data = ps7_clock_init_data_3_0; - ps7_ddr_init_data = ps7_ddr_init_data_3_0; - ps7_peripherals_init_data = ps7_peripherals_init_data_3_0; - //pcw_ver = 3; - } - - // MIO init - ret = ps7_config (ps7_mio_init_data); - if (ret != PS7_INIT_SUCCESS) return ret; - - // PLL init - ret = ps7_config (ps7_pll_init_data); - if (ret != PS7_INIT_SUCCESS) return ret; - - // Clock init - ret = ps7_config (ps7_clock_init_data); - if (ret != PS7_INIT_SUCCESS) return ret; - - // DDR init - ret = ps7_config (ps7_ddr_init_data); - if (ret != PS7_INIT_SUCCESS) return ret; - - - - // Peripherals init - ret = ps7_config (ps7_peripherals_init_data); - if (ret != PS7_INIT_SUCCESS) return ret; - //xil_printf ("\n PCW Silicon Version : %d.0", pcw_ver); - return PS7_INIT_SUCCESS; -} - - - - -/* For delay calculation using global timer */ - -/* start timer */ - void perf_start_clock(void) -{ - *(volatile unsigned int*)SCU_GLOBAL_TIMER_CONTROL = ((1 << 0) | // Timer Enable - (1 << 3) | // Auto-increment - (0 << 8) // Pre-scale - ); -} - -/* stop timer and reset timer count regs */ - void perf_reset_clock(void) -{ - perf_disable_clock(); - *(volatile unsigned int*)SCU_GLOBAL_TIMER_COUNT_L32 = 0; - *(volatile unsigned int*)SCU_GLOBAL_TIMER_COUNT_U32 = 0; -} - -/* Compute mask for given delay in miliseconds*/ -int get_number_of_cycles_for_delay(unsigned int delay) -{ - // GTC is always clocked at 1/2 of the CPU frequency (CPU_3x2x) - return (APU_FREQ*delay/(2*1000)); - -} - -/* stop timer */ - void perf_disable_clock(void) -{ - *(volatile unsigned int*)SCU_GLOBAL_TIMER_CONTROL = 0; -} - -void perf_reset_and_start_timer() -{ - perf_reset_clock(); - perf_start_clock(); -} - - - - diff --git a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/ps7_init_gpl.h b/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/ps7_init_gpl.h deleted file mode 100644 index b88f82a5f..000000000 --- a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/ps7_init_gpl.h +++ /dev/null @@ -1,137 +0,0 @@ - -/****************************************************************************** -* -* (c) Copyright 2010-2014 Xilinx, Inc. All rights reserved. -* -* Permission is hereby granted, free of charge, to any person obtaining a copy of this -* software and associated documentation files (the "Software"), to deal in the Software -* without restriction, including without limitation the rights to use, copy, modify, merge, -* publish, distribute, sublicense, and/or sell copies of the Software, and to permit -* persons to whom the Software is furnished to do so, subject to the following conditions: -* -* The above copyright notice and this permission notice shall be included in all copies or -* substantial portions of the Software. -* -* Use of the Software is limited solely to applications: (a) running on a Xilinx device, or -* (b) that interact with a Xilinx device through a bus or interconnect. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING -* BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -* NONINFRINGEMENT. IN NO EVENT SHALL THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -* -* Except as contained in this notice, the name of the Xilinx shall not be used in advertising or -* otherwise to promote the sale, use or other dealings in this Software without prior written -* authorization from Xilinx. -* -*******************************************************************************/ -/****************************************************************************/ -/** -* -* @file ps7_init.h -* -* This file can be included in FSBL code -* to get prototype of ps7_init() function -* and error codes -* -*****************************************************************************/ - -#ifdef __cplusplus -extern "C" { -#endif - - -//typedef unsigned int u32; - - -/** do we need to make this name more unique ? **/ -//extern u32 ps7_init_data[]; -extern unsigned long * ps7_ddr_init_data; -extern unsigned long * ps7_mio_init_data; -extern unsigned long * ps7_pll_init_data; -extern unsigned long * ps7_clock_init_data; -extern unsigned long * ps7_peripherals_init_data; - - - -#define OPCODE_EXIT 0U -#define OPCODE_CLEAR 1U -#define OPCODE_WRITE 2U -#define OPCODE_MASKWRITE 3U -#define OPCODE_MASKPOLL 4U -#define OPCODE_MASKDELAY 5U -#define NEW_PS7_ERR_CODE 1 - -/* Encode number of arguments in last nibble */ -#define EMIT_EXIT() ( (OPCODE_EXIT << 4 ) | 0 ) -#define EMIT_CLEAR(addr) ( (OPCODE_CLEAR << 4 ) | 1 ) , addr -#define EMIT_WRITE(addr,val) ( (OPCODE_WRITE << 4 ) | 2 ) , addr, val -#define EMIT_MASKWRITE(addr,mask,val) ( (OPCODE_MASKWRITE << 4 ) | 3 ) , addr, mask, val -#define EMIT_MASKPOLL(addr,mask) ( (OPCODE_MASKPOLL << 4 ) | 2 ) , addr, mask -#define EMIT_MASKDELAY(addr,mask) ( (OPCODE_MASKDELAY << 4 ) | 2 ) , addr, mask - -/* Returns codes of PS7_Init */ -#define PS7_INIT_SUCCESS (0) // 0 is success in good old C -#define PS7_INIT_CORRUPT (1) // 1 the data is corrupted, and slcr reg are in corrupted state now -#define PS7_INIT_TIMEOUT (2) // 2 when a poll operation timed out -#define PS7_POLL_FAILED_DDR_INIT (3) // 3 when a poll operation timed out for ddr init -#define PS7_POLL_FAILED_DMA (4) // 4 when a poll operation timed out for dma done bit -#define PS7_POLL_FAILED_PLL (5) // 5 when a poll operation timed out for pll sequence init - - -/* Silicon Versions */ -#define PCW_SILICON_VERSION_1 0 -#define PCW_SILICON_VERSION_2 1 -#define PCW_SILICON_VERSION_3 2 - -/* This flag to be used by FSBL to check whether ps7_post_config() proc exixts */ -#define PS7_POST_CONFIG - -/* Freq of all peripherals */ - -#define APU_FREQ 650000000 -#define DDR_FREQ 525000000 -#define DCI_FREQ 10096154 -#define QSPI_FREQ 200000000 -#define SMC_FREQ 10000000 -#define ENET0_FREQ 125000000 -#define ENET1_FREQ 10000000 -#define USB0_FREQ 60000000 -#define USB1_FREQ 60000000 -#define SDIO_FREQ 50000000 -#define UART_FREQ 100000000 -#define SPI_FREQ 10000000 -#define I2C_FREQ 108333336 -#define WDT_FREQ 108333336 -#define TTC_FREQ 50000000 -#define CAN_FREQ 10000000 -#define PCAP_FREQ 200000000 -#define TPIU_FREQ 200000000 -#define FPGA0_FREQ 100000000 -#define FPGA1_FREQ 10000000 -#define FPGA2_FREQ 10000000 -#define FPGA3_FREQ 10000000 - - -/* For delay calculation using global registers*/ -#define SCU_GLOBAL_TIMER_COUNT_L32 0xF8F00200 -#define SCU_GLOBAL_TIMER_COUNT_U32 0xF8F00204 -#define SCU_GLOBAL_TIMER_CONTROL 0xF8F00208 -#define SCU_GLOBAL_TIMER_AUTO_INC 0xF8F00218 - -int ps7_config( unsigned long*); -int ps7_init(); -int ps7_post_config(); -int ps7_debug(); -char* getPS7MessageInfo(unsigned key); - -void perf_start_clock(void); -void perf_disable_clock(void); -void perf_reset_clock(void); -void perf_reset_and_start_timer(); -int get_number_of_cycles_for_delay(unsigned int delay); -#ifdef __cplusplus -} -#endif - diff --git a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/quad_wrapper.bit b/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/quad_wrapper.bit deleted file mode 100644 index d437dcc33858ee864f6f31e178c1b41322f7a8c6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2083848 zcmeFa3!ElbUFZF;daAptpLC|H=Xo+Sxz3q(2+c)oGEtFRs>dcw5VeD8K~~KK0wO99 zBqaFyZccZa&>0X%oMFkjZkn(-VRQ)~Ml>RW;$_`Ph%B-nKO*41x-MYMi@^)8(C`0$ zs_MC4yPwNBmEY-p>fF!ypYOlUIdwTzMbop7CVxcU4fM2|Zoc8h>u-7e4X=CMD_;Ms z)t`RF>#tdU&f-h1PR+A^@D;EB=^uaXYo2q(;?uwLX-}t@(ad-L%;M7*U;dLncIDzC zy`0XIh;MuP72me_U34Q&Km8fcTwHwSmET3Lpo9PYKW%q0MD)PiJS}I*&fc~9O2vVT zzVg^&n-ZI}u}xg!o)Wk5`^S?sp7MOU>TedkbE#i@h1aWJTujnWCwV0<@D^!{?FqKi zv;{JGvNGG*i=>jWlQO-e%$QcD9^E1s5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X z009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH z0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI z5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X z009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH z0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI z5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X z009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH z0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI z5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X z009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH z0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI z5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X z009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH z0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI z5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X z009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH z0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI z5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X z009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH z0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI z5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X z009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH z0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI z5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X z009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH z0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI z5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X009sH0T2KI5C8!X z009sH0T2KI5C8!Xu$6!xCX#irC%eQ`8sBTWEPZBY`7%2T&+IHbv$ODuP0#;W#l1^e zvU1wi)vo+h$CG~QXk=E2uV-GVCyggMp1L~Qp6VQ*mD6jwEPZBY`7%2T&+IHbv$OE3 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 zKmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l z00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck) z1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`; zKmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l z00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck) z1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`; zKmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l z00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck) z1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`; zKmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l z00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck) z1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`; zKmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l z00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck) z1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`; zKmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l z00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck) z1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`; 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 zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkL{PXtOt-p;4jRR5=)64$Kb@O2;B-Pw;pZ!~@yO*uSU jx21L)v&6m6$aTIvwr>5K<MuZ9(^CsA?0_Bkg&lYU%^!I8 diff --git a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/system.hdf b/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/system.hdf deleted file mode 100644 index 1cc1dd50b83f139908f6267bd401a6d9bbc35cf6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 514274 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%0D$O25dl; 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	i8Rv^qY{I38g|;S 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	BrhTv$$D) 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%0Dpnkiir1P46}m^}p| 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	SZwCsPl;XyzDTaI`GBSG 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 diff --git a/quad/xsdk_workspace_vivado/real_quad/.cproject b/quad/xsdk_workspace_vivado/real_quad/.cproject index c758d82d8..cb687f859 100644 --- a/quad/xsdk_workspace_vivado/real_quad/.cproject +++ b/quad/xsdk_workspace_vivado/real_quad/.cproject @@ -1,168 +1,150 @@ <?xml version="1.0" encoding="UTF-8" standalone="no"?> <?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage"> <storageModule moduleId="org.eclipse.cdt.core.settings"> - <cconfiguration id="xilinx.gnu.arm.exe.debug.980189137"> - <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="xilinx.gnu.arm.exe.debug.980189137" moduleId="org.eclipse.cdt.core.settings" name="Debug"> + <cconfiguration id="xilinx.gnu.armv7.exe.debug.1245217687"> + <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="xilinx.gnu.armv7.exe.debug.1245217687" moduleId="org.eclipse.cdt.core.settings" name="Debug"> <externalSettings/> <extensions> - <extension id="com.xilinx.sdk.managedbuilder.XELF.arm" point="org.eclipse.cdt.core.BinaryParser"/> + <extension id="com.xilinx.sdk.managedbuilder.XELF.arm.a53.x32" point="org.eclipse.cdt.core.BinaryParser"/> + <extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> <extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + <extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> <extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/> <extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> - <extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> - <extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> </extensions> </storageModule> <storageModule moduleId="cdtBuildSystem" version="4.0.0"> - <configuration artifactExtension="elf" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug" cleanCommand="rm -rf" description="" id="xilinx.gnu.arm.exe.debug.980189137" name="Debug" parent="xilinx.gnu.arm.exe.debug"> - <folderInfo id="xilinx.gnu.arm.exe.debug.980189137." name="/" resourcePath=""> - <toolChain id="xilinx.gnu.arm.exe.debug.toolchain.1195127676" name="Xilinx ARM GNU Toolchain" resourceTypeBasedDiscovery="true" superClass="xilinx.gnu.arm.exe.debug.toolchain"> - <targetPlatform binaryParser="com.xilinx.sdk.managedbuilder.XELF.arm" id="xilinx.arm.target.gnu.base.debug.2072264921" isAbstract="false" name="Debug Platform" superClass="xilinx.arm.target.gnu.base.debug"/> - <builder buildPath="${workspace_loc:/modular_quad_pid}/Debug" enableAutoBuild="true" id="xilinx.gnu.arm.toolchain.builder.debug.2124876787" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="GNU make" superClass="xilinx.gnu.arm.toolchain.builder.debug"/> - <tool id="xilinx.gnu.arm.c.toolchain.assembler.debug.192056667" name="ARM gcc assembler" superClass="xilinx.gnu.arm.c.toolchain.assembler.debug"> - <inputType id="xilinx.gnu.assembler.input.532832448" superClass="xilinx.gnu.assembler.input"/> + <configuration artifactExtension="elf" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug" cleanCommand="rm -rf" description="" id="xilinx.gnu.armv7.exe.debug.1245217687" name="Debug" parent="xilinx.gnu.armv7.exe.debug" prebuildStep="a9-linaro-pre-build-step"> + <folderInfo id="xilinx.gnu.armv7.exe.debug.1245217687." name="/" resourcePath=""> + <toolChain id="xilinx.gnu.armv7.exe.debug.toolchain.998329507" name="Xilinx ARM v7 GNU Toolchain" superClass="xilinx.gnu.armv7.exe.debug.toolchain"> + <targetPlatform binaryParser="com.xilinx.sdk.managedbuilder.XELF.arm.a53.x32" id="xilinx.armv7.target.gnu.base.debug.1284634467" isAbstract="false" name="Debug Platform" superClass="xilinx.armv7.target.gnu.base.debug"/> + <builder buildPath="${workspace_loc:/real_quad}/Debug" enableAutoBuild="true" id="xilinx.gnu.armv7.toolchain.builder.debug.1307414840" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="GNU make" superClass="xilinx.gnu.armv7.toolchain.builder.debug"/> + <tool id="xilinx.gnu.armv7.c.toolchain.assembler.debug.1166376353" name="ARM v7 gcc assembler" superClass="xilinx.gnu.armv7.c.toolchain.assembler.debug"> + <inputType id="xilinx.gnu.assembler.input.520283046" superClass="xilinx.gnu.assembler.input"/> </tool> - <tool id="xilinx.gnu.arm.c.toolchain.compiler.debug.177835003" name="ARM gcc compiler" superClass="xilinx.gnu.arm.c.toolchain.compiler.debug"> - <option defaultValue="gnu.c.optimization.level.none" id="xilinx.gnu.compiler.option.optimization.level.1900496019" name="Optimization Level" superClass="xilinx.gnu.compiler.option.optimization.level" value="gnu.c.optimization.level.none" valueType="enumerated"/> - <option id="xilinx.gnu.compiler.option.debugging.level.1207856754" name="Debug Level" superClass="xilinx.gnu.compiler.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/> - <option id="xilinx.gnu.compiler.inferred.swplatform.includes.2123463819" name="Software Platform Include Path" superClass="xilinx.gnu.compiler.inferred.swplatform.includes" valueType="includePath"> + <tool id="xilinx.gnu.armv7.c.toolchain.compiler.debug.537645504" name="ARM v7 gcc compiler" superClass="xilinx.gnu.armv7.c.toolchain.compiler.debug"> + <option defaultValue="gnu.c.optimization.level.none" id="xilinx.gnu.compiler.option.optimization.level.816212278" name="Optimization Level" superClass="xilinx.gnu.compiler.option.optimization.level" valueType="enumerated"/> + <option id="xilinx.gnu.compiler.option.debugging.level.2038946279" name="Debug Level" superClass="xilinx.gnu.compiler.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/> + <option id="xilinx.gnu.compiler.inferred.swplatform.includes.1981775321" name="Software Platform Include Path" superClass="xilinx.gnu.compiler.inferred.swplatform.includes" valueType="includePath"> <listOptionValue builtIn="false" value="../../system_bsp/ps7_cortexa9_0/include"/> </option> - <option id="xilinx.gnu.compiler.symbols.defined.1696008720" name="Defined symbols (-D)" superClass="xilinx.gnu.compiler.symbols.defined"/> - <option id="xilinx.gnu.compiler.dircategory.includes.1211006365" name="Include Paths" superClass="xilinx.gnu.compiler.dircategory.includes" valueType="includePath"> - <listOptionValue builtIn="false" value="../../system_bsp/ps7_cortexa9_0/include"/> - <listOptionValue builtIn="false" value=""${workspace_loc:/real_quad/ext/commands}""/> - <listOptionValue builtIn="false" value=""${workspace_loc:/real_quad/ext/computation_graph}""/> - <listOptionValue builtIn="false" value=""${workspace_loc:/real_quad/ext/graph_blocks}""/> - <listOptionValue builtIn="false" value=""${workspace_loc:/real_quad/ext/quad_app}""/> - <listOptionValue builtIn="false" value=""${workspace_loc:/real_quad/ext/queue}""/> + <option id="xilinx.gnu.compiler.misc.other.693404765" name="Other flags" superClass="xilinx.gnu.compiler.misc.other" value="-c -fmessage-length=0 -MT"$@" -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard" valueType="string"/> + <option id="xilinx.gnu.compiler.dircategory.includes.824665764" name="Include Paths" superClass="xilinx.gnu.compiler.dircategory.includes" valueType="includePath"> + <listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/ext/commands}""/> + <listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/ext/computation_graph}""/> + <listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/ext/graph_blocks}""/> + <listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/ext/quad_app}""/> + <listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/ext/queue}""/> </option> - <inputType id="xilinx.gnu.arm.c.compiler.input.909725989" name="C source files" superClass="xilinx.gnu.arm.c.compiler.input"/> + <inputType id="xilinx.gnu.armv7.c.compiler.input.276088888" name="C source files" superClass="xilinx.gnu.armv7.c.compiler.input"/> </tool> - <tool id="xilinx.gnu.arm.cxx.toolchain.compiler.debug.1470236349" name="ARM g++ compiler" superClass="xilinx.gnu.arm.cxx.toolchain.compiler.debug"> - <option defaultValue="gnu.c.optimization.level.none" id="xilinx.gnu.compiler.option.optimization.level.9972228" name="Optimization Level" superClass="xilinx.gnu.compiler.option.optimization.level" valueType="enumerated"/> - <option id="xilinx.gnu.compiler.option.debugging.level.595503730" name="Debug Level" superClass="xilinx.gnu.compiler.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/> - <option id="xilinx.gnu.compiler.inferred.swplatform.includes.53367111" name="Software Platform Include Path" superClass="xilinx.gnu.compiler.inferred.swplatform.includes" valueType="includePath"> + <tool id="xilinx.gnu.armv7.cxx.toolchain.compiler.debug.523403942" name="ARM v7 g++ compiler" superClass="xilinx.gnu.armv7.cxx.toolchain.compiler.debug"> + <option defaultValue="gnu.c.optimization.level.none" id="xilinx.gnu.compiler.option.optimization.level.1591080094" name="Optimization Level" superClass="xilinx.gnu.compiler.option.optimization.level" valueType="enumerated"/> + <option id="xilinx.gnu.compiler.option.debugging.level.965983823" name="Debug Level" superClass="xilinx.gnu.compiler.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/> + <option id="xilinx.gnu.compiler.inferred.swplatform.includes.666259264" name="Software Platform Include Path" superClass="xilinx.gnu.compiler.inferred.swplatform.includes" valueType="includePath"> <listOptionValue builtIn="false" value="../../system_bsp/ps7_cortexa9_0/include"/> </option> </tool> - <tool id="xilinx.gnu.arm.toolchain.archiver.585254344" name="ARM archiver" superClass="xilinx.gnu.arm.toolchain.archiver"/> - <tool id="xilinx.gnu.arm.c.toolchain.linker.debug.360488201" name="ARM gcc linker" superClass="xilinx.gnu.arm.c.toolchain.linker.debug"> - <option id="xilinx.gnu.linker.inferred.swplatform.lpath.47881921" name="Software Platform Library Path" superClass="xilinx.gnu.linker.inferred.swplatform.lpath" valueType="libPaths"> + <tool id="xilinx.gnu.armv7.toolchain.archiver.1116746044" name="ARM v7 archiver" superClass="xilinx.gnu.armv7.toolchain.archiver"/> + <tool id="xilinx.gnu.armv7.c.toolchain.linker.debug.1508513016" name="ARM v7 gcc linker" superClass="xilinx.gnu.armv7.c.toolchain.linker.debug"> + <option id="xilinx.gnu.linker.inferred.swplatform.lpath.1672422908" name="Software Platform Library Path" superClass="xilinx.gnu.linker.inferred.swplatform.lpath" valueType="libPaths"> <listOptionValue builtIn="false" value="../../system_bsp/ps7_cortexa9_0/lib"/> </option> - <option id="xilinx.gnu.linker.inferred.swplatform.flags.349145084" name="Software Platform Inferred Flags" superClass="xilinx.gnu.linker.inferred.swplatform.flags" valueType="libs"/> - <option id="xilinx.gnu.c.linker.option.lscript.972374298" name="Linker Script" superClass="xilinx.gnu.c.linker.option.lscript" value="../src/lscript.ld" valueType="string"/> - <option id="xilinx.gnu.c.link.option.libs.1025826490" name="Libraries (-l)" superClass="xilinx.gnu.c.link.option.libs" valueType="libs"> + <option id="xilinx.gnu.linker.inferred.swplatform.flags.794065502" name="Software Platform Inferred Flags" superClass="xilinx.gnu.linker.inferred.swplatform.flags" valueType="libs"> + <listOptionValue builtIn="false" value="-Wl,--start-group,-lxil,-lgcc,-lc,--end-group"/> + </option> + <option id="xilinx.gnu.c.linker.option.lscript.1187047196" name="Linker Script" superClass="xilinx.gnu.c.linker.option.lscript" value="../src/lscript.ld" valueType="string"/> + <option id="xilinx.gnu.c.link.option.ldflags.1918760372" name="Linker Flags" superClass="xilinx.gnu.c.link.option.ldflags" value=" -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -Wl,-build-id=none -specs=Xilinx.spec" valueType="string"/> + <option id="xilinx.gnu.c.link.option.libs.251635495" name="Libraries (-l)" superClass="xilinx.gnu.c.link.option.libs" valueType="libs"> <listOptionValue builtIn="false" value="m"/> - <listOptionValue builtIn="false" srcPrefixMapping="" srcRootPath="" value="-Wl,--start-group,-lxil,-lgcc,-lc,--end-group"/> </option> - <option id="xilinx.gnu.c.link.option.paths.1462160427" name="Library search path (-L)" superClass="xilinx.gnu.c.link.option.paths"/> - <inputType id="xilinx.gnu.linker.input.777404607" superClass="xilinx.gnu.linker.input"> + <inputType id="xilinx.gnu.linker.input.1619669762" superClass="xilinx.gnu.linker.input"> <additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/> <additionalInput kind="additionalinput" paths="$(LIBS)"/> </inputType> - <inputType id="xilinx.gnu.linker.input.lscript.634888687" name="Linker Script" superClass="xilinx.gnu.linker.input.lscript"/> + <inputType id="xilinx.gnu.linker.input.lscript.1314642764" name="Linker Script" superClass="xilinx.gnu.linker.input.lscript"/> </tool> - <tool id="xilinx.gnu.arm.cxx.toolchain.linker.debug.1921379343" name="ARM g++ linker" superClass="xilinx.gnu.arm.cxx.toolchain.linker.debug"> - <option id="xilinx.gnu.linker.inferred.swplatform.lpath.1819794269" name="Software Platform Library Path" superClass="xilinx.gnu.linker.inferred.swplatform.lpath" valueType="libPaths"> + <tool id="xilinx.gnu.armv7.cxx.toolchain.linker.debug.1128697700" name="ARM v7 g++ linker" superClass="xilinx.gnu.armv7.cxx.toolchain.linker.debug"> + <option id="xilinx.gnu.linker.inferred.swplatform.lpath.340934892" name="Software Platform Library Path" superClass="xilinx.gnu.linker.inferred.swplatform.lpath" valueType="libPaths"> <listOptionValue builtIn="false" value="../../system_bsp/ps7_cortexa9_0/lib"/> </option> - <option id="xilinx.gnu.linker.inferred.swplatform.flags.1650054208" name="Software Platform Inferred Flags" superClass="xilinx.gnu.linker.inferred.swplatform.flags" valueType="libs"> + <option id="xilinx.gnu.linker.inferred.swplatform.flags.828101326" name="Software Platform Inferred Flags" superClass="xilinx.gnu.linker.inferred.swplatform.flags" valueType="libs"> <listOptionValue builtIn="false" value="-Wl,--start-group,-lxil,-lgcc,-lc,--end-group"/> </option> - <option id="xilinx.gnu.c.linker.option.lscript.1506564015" name="Linker Script" superClass="xilinx.gnu.c.linker.option.lscript" value="../src/lscript.ld" valueType="string"/> + <option id="xilinx.gnu.c.linker.option.lscript.455382557" name="Linker Script" superClass="xilinx.gnu.c.linker.option.lscript" value="../src/lscript.ld" valueType="string"/> </tool> - <tool id="xilinx.gnu.arm.size.debug.923967150" name="ARM Print Size" superClass="xilinx.gnu.arm.size.debug"/> + <tool id="xilinx.gnu.armv7.size.debug.1943743378" name="ARM v7 Print Size" superClass="xilinx.gnu.armv7.size.debug"/> </toolChain> </folderInfo> - <sourceEntries> - <entry excluding="gen_diagram|test" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/> - </sourceEntries> </configuration> </storageModule> <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> </cconfiguration> - <cconfiguration id="xilinx.gnu.arm.exe.release.255973624"> - <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="xilinx.gnu.arm.exe.release.255973624" moduleId="org.eclipse.cdt.core.settings" name="Release"> + <cconfiguration id="xilinx.gnu.armv7.exe.release.5476642"> + <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="xilinx.gnu.armv7.exe.release.5476642" moduleId="org.eclipse.cdt.core.settings" name="Release"> <externalSettings/> <extensions> - <extension id="com.xilinx.sdk.managedbuilder.XELF.arm" point="org.eclipse.cdt.core.BinaryParser"/> + <extension id="com.xilinx.sdk.managedbuilder.XELF.arm.a53.x32" point="org.eclipse.cdt.core.BinaryParser"/> + <extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> <extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + <extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> <extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/> <extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> - <extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> - <extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> </extensions> </storageModule> <storageModule moduleId="cdtBuildSystem" version="4.0.0"> - <configuration artifactExtension="elf" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release" cleanCommand="rm -rf" description="" id="xilinx.gnu.arm.exe.release.255973624" name="Release" parent="xilinx.gnu.arm.exe.release"> - <folderInfo id="xilinx.gnu.arm.exe.release.255973624." name="/" resourcePath=""> - <toolChain id="xilinx.gnu.arm.exe.release.toolchain.1375808537" name="Xilinx ARM GNU Toolchain" superClass="xilinx.gnu.arm.exe.release.toolchain"> - <targetPlatform binaryParser="com.xilinx.sdk.managedbuilder.XELF.arm" id="xilinx.arm.target.gnu.base.release.230721338" isAbstract="false" name="Release Platform" superClass="xilinx.arm.target.gnu.base.release"/> - <builder buildPath="${workspace_loc:/modular_quad_pid}/Release" enableAutoBuild="true" id="xilinx.gnu.arm.toolchain.builder.release.122813927" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="GNU make" superClass="xilinx.gnu.arm.toolchain.builder.release"/> - <tool id="xilinx.gnu.arm.c.toolchain.assembler.release.1899854338" name="ARM gcc assembler" superClass="xilinx.gnu.arm.c.toolchain.assembler.release"> - <inputType id="xilinx.gnu.assembler.input.756511915" superClass="xilinx.gnu.assembler.input"/> + <configuration artifactExtension="elf" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release" cleanCommand="rm -rf" description="" id="xilinx.gnu.armv7.exe.release.5476642" name="Release" parent="xilinx.gnu.armv7.exe.release" prebuildStep="a9-linaro-pre-build-step"> + <folderInfo id="xilinx.gnu.armv7.exe.release.5476642." name="/" resourcePath=""> + <toolChain id="xilinx.gnu.armv7.exe.release.toolchain.1615887378" name="Xilinx ARM v7 GNU Toolchain" superClass="xilinx.gnu.armv7.exe.release.toolchain"> + <targetPlatform binaryParser="com.xilinx.sdk.managedbuilder.XELF.arm.a53.x32" id="xilinx.armv7.target.gnu.base.release.1418200810" isAbstract="false" name="Release Platform" superClass="xilinx.armv7.target.gnu.base.release"/> + <builder buildPath="${workspace_loc:/real_quad}/Release" enableAutoBuild="true" id="xilinx.gnu.armv7.toolchain.builder.release.1345190549" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="GNU make" superClass="xilinx.gnu.armv7.toolchain.builder.release"/> + <tool id="xilinx.gnu.armv7.c.toolchain.assembler.release.544867390" name="ARM v7 gcc assembler" superClass="xilinx.gnu.armv7.c.toolchain.assembler.release"> + <inputType id="xilinx.gnu.assembler.input.1854748968" superClass="xilinx.gnu.assembler.input"/> </tool> - <tool id="xilinx.gnu.arm.c.toolchain.compiler.release.85270120" name="ARM gcc compiler" superClass="xilinx.gnu.arm.c.toolchain.compiler.release"> - <option defaultValue="gnu.c.optimization.level.more" id="xilinx.gnu.compiler.option.optimization.level.515686013" name="Optimization Level" superClass="xilinx.gnu.compiler.option.optimization.level" valueType="enumerated"/> - <option id="xilinx.gnu.compiler.option.debugging.level.1121150517" name="Debug Level" superClass="xilinx.gnu.compiler.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/> - <option id="xilinx.gnu.compiler.inferred.swplatform.includes.687694973" name="Software Platform Include Path" superClass="xilinx.gnu.compiler.inferred.swplatform.includes" valueType="includePath"> + <tool id="xilinx.gnu.armv7.c.toolchain.compiler.release.1774347966" name="ARM v7 gcc compiler" superClass="xilinx.gnu.armv7.c.toolchain.compiler.release"> + <option defaultValue="gnu.c.optimization.level.more" id="xilinx.gnu.compiler.option.optimization.level.1109949560" name="Optimization Level" superClass="xilinx.gnu.compiler.option.optimization.level" valueType="enumerated"/> + <option id="xilinx.gnu.compiler.option.debugging.level.1719497504" name="Debug Level" superClass="xilinx.gnu.compiler.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/> + <option id="xilinx.gnu.compiler.inferred.swplatform.includes.551039729" name="Software Platform Include Path" superClass="xilinx.gnu.compiler.inferred.swplatform.includes" valueType="includePath"> <listOptionValue builtIn="false" value="../../system_bsp/ps7_cortexa9_0/include"/> </option> - <option id="xilinx.gnu.compiler.symbols.defined.1562495938" name="Defined symbols (-D)" superClass="xilinx.gnu.compiler.symbols.defined" valueType="definedSymbols"> - <listOptionValue builtIn="false" value="NDEBUG=1"/> - </option> - <option id="xilinx.gnu.compiler.dircategory.includes.1873624761" name="Include Paths" superClass="xilinx.gnu.compiler.dircategory.includes" valueType="includePath"> - <listOptionValue builtIn="false" value="../../system_bsp/ps7_cortexa9_0/include"/> - <listOptionValue builtIn="false" value=""${workspace_loc:/real_quad/ext/computation_graph}""/> - <listOptionValue builtIn="false" value=""${workspace_loc:/real_quad/ext/quad_app}""/> - <listOptionValue builtIn="false" value=""${workspace_loc:/real_quad/ext/queue}""/> - <listOptionValue builtIn="false" value=""${workspace_loc:/real_quad/ext/commands}""/> - <listOptionValue builtIn="false" value=""${workspace_loc:/real_quad/ext/graph_blocks}""/> - </option> - <inputType id="xilinx.gnu.arm.c.compiler.input.846429887" name="C source files" superClass="xilinx.gnu.arm.c.compiler.input"/> + <option id="xilinx.gnu.compiler.misc.other.1220258141" name="Other flags" superClass="xilinx.gnu.compiler.misc.other" value="-c -fmessage-length=0 -MT"$@" -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard" valueType="string"/> + <inputType id="xilinx.gnu.armv7.c.compiler.input.1905976603" name="C source files" superClass="xilinx.gnu.armv7.c.compiler.input"/> </tool> - <tool id="xilinx.gnu.arm.cxx.toolchain.compiler.release.1846278293" name="ARM g++ compiler" superClass="xilinx.gnu.arm.cxx.toolchain.compiler.release"> - <option defaultValue="gnu.c.optimization.level.more" id="xilinx.gnu.compiler.option.optimization.level.1613253262" name="Optimization Level" superClass="xilinx.gnu.compiler.option.optimization.level" valueType="enumerated"/> - <option id="xilinx.gnu.compiler.option.debugging.level.1485305325" name="Debug Level" superClass="xilinx.gnu.compiler.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/> - <option id="xilinx.gnu.compiler.inferred.swplatform.includes.2144106422" name="Software Platform Include Path" superClass="xilinx.gnu.compiler.inferred.swplatform.includes" valueType="includePath"> + <tool id="xilinx.gnu.armv7.cxx.toolchain.compiler.release.330353795" name="ARM v7 g++ compiler" superClass="xilinx.gnu.armv7.cxx.toolchain.compiler.release"> + <option defaultValue="gnu.c.optimization.level.more" id="xilinx.gnu.compiler.option.optimization.level.1382654393" name="Optimization Level" superClass="xilinx.gnu.compiler.option.optimization.level" valueType="enumerated"/> + <option id="xilinx.gnu.compiler.option.debugging.level.83616500" name="Debug Level" superClass="xilinx.gnu.compiler.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/> + <option id="xilinx.gnu.compiler.inferred.swplatform.includes.2075210092" name="Software Platform Include Path" superClass="xilinx.gnu.compiler.inferred.swplatform.includes" valueType="includePath"> <listOptionValue builtIn="false" value="../../system_bsp/ps7_cortexa9_0/include"/> </option> </tool> - <tool id="xilinx.gnu.arm.toolchain.archiver.86822110" name="ARM archiver" superClass="xilinx.gnu.arm.toolchain.archiver"/> - <tool id="xilinx.gnu.arm.c.toolchain.linker.release.264708896" name="ARM gcc linker" superClass="xilinx.gnu.arm.c.toolchain.linker.release"> - <option id="xilinx.gnu.linker.inferred.swplatform.lpath.444912795" name="Software Platform Library Path" superClass="xilinx.gnu.linker.inferred.swplatform.lpath" valueType="libPaths"> + <tool id="xilinx.gnu.armv7.toolchain.archiver.2045231509" name="ARM v7 archiver" superClass="xilinx.gnu.armv7.toolchain.archiver"/> + <tool id="xilinx.gnu.armv7.c.toolchain.linker.release.1233504244" name="ARM v7 gcc linker" superClass="xilinx.gnu.armv7.c.toolchain.linker.release"> + <option id="xilinx.gnu.linker.inferred.swplatform.lpath.1007503113" name="Software Platform Library Path" superClass="xilinx.gnu.linker.inferred.swplatform.lpath" valueType="libPaths"> <listOptionValue builtIn="false" value="../../system_bsp/ps7_cortexa9_0/lib"/> </option> - <option id="xilinx.gnu.linker.inferred.swplatform.flags.1169214283" name="Software Platform Inferred Flags" superClass="xilinx.gnu.linker.inferred.swplatform.flags" valueType="libs"> + <option id="xilinx.gnu.linker.inferred.swplatform.flags.1633933097" name="Software Platform Inferred Flags" superClass="xilinx.gnu.linker.inferred.swplatform.flags" valueType="libs"> <listOptionValue builtIn="false" value="-Wl,--start-group,-lxil,-lgcc,-lc,--end-group"/> </option> - <option id="xilinx.gnu.c.linker.option.lscript.1266246445" name="Linker Script" superClass="xilinx.gnu.c.linker.option.lscript" value="../src/lscript.ld" valueType="string"/> - <option id="xilinx.gnu.c.link.option.libs.962400757" name="Libraries (-l)" superClass="xilinx.gnu.c.link.option.libs" valueType="libs"> - <listOptionValue builtIn="false" value="m"/> - </option> - <inputType id="xilinx.gnu.linker.input.1933167678" superClass="xilinx.gnu.linker.input"> + <option id="xilinx.gnu.c.linker.option.lscript.1391503865" name="Linker Script" superClass="xilinx.gnu.c.linker.option.lscript" value="../src/lscript.ld" valueType="string"/> + <option id="xilinx.gnu.c.link.option.ldflags.1032159198" name="Linker Flags" superClass="xilinx.gnu.c.link.option.ldflags" value=" -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -Wl,-build-id=none -specs=Xilinx.spec" valueType="string"/> + <inputType id="xilinx.gnu.linker.input.2000592538" superClass="xilinx.gnu.linker.input"> <additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/> <additionalInput kind="additionalinput" paths="$(LIBS)"/> </inputType> - <inputType id="xilinx.gnu.linker.input.lscript.574206172" name="Linker Script" superClass="xilinx.gnu.linker.input.lscript"/> + <inputType id="xilinx.gnu.linker.input.lscript.619596326" name="Linker Script" superClass="xilinx.gnu.linker.input.lscript"/> </tool> - <tool id="xilinx.gnu.arm.cxx.toolchain.linker.release.1512126497" name="ARM g++ linker" superClass="xilinx.gnu.arm.cxx.toolchain.linker.release"> - <option id="xilinx.gnu.linker.inferred.swplatform.lpath.1491656562" name="Software Platform Library Path" superClass="xilinx.gnu.linker.inferred.swplatform.lpath" valueType="libPaths"> + <tool id="xilinx.gnu.armv7.cxx.toolchain.linker.release.906108567" name="ARM v7 g++ linker" superClass="xilinx.gnu.armv7.cxx.toolchain.linker.release"> + <option id="xilinx.gnu.linker.inferred.swplatform.lpath.359010680" name="Software Platform Library Path" superClass="xilinx.gnu.linker.inferred.swplatform.lpath" valueType="libPaths"> <listOptionValue builtIn="false" value="../../system_bsp/ps7_cortexa9_0/lib"/> </option> - <option id="xilinx.gnu.linker.inferred.swplatform.flags.1353247076" name="Software Platform Inferred Flags" superClass="xilinx.gnu.linker.inferred.swplatform.flags" valueType="libs"> + <option id="xilinx.gnu.linker.inferred.swplatform.flags.1749622312" name="Software Platform Inferred Flags" superClass="xilinx.gnu.linker.inferred.swplatform.flags" valueType="libs"> <listOptionValue builtIn="false" value="-Wl,--start-group,-lxil,-lgcc,-lc,--end-group"/> </option> - <option id="xilinx.gnu.c.linker.option.lscript.486002186" name="Linker Script" superClass="xilinx.gnu.c.linker.option.lscript" value="../src/lscript.ld" valueType="string"/> + <option id="xilinx.gnu.c.linker.option.lscript.1678598473" name="Linker Script" superClass="xilinx.gnu.c.linker.option.lscript" value="../src/lscript.ld" valueType="string"/> </tool> - <tool id="xilinx.gnu.arm.size.release.362029751" name="ARM Print Size" superClass="xilinx.gnu.arm.size.release"/> + <tool id="xilinx.gnu.armv7.size.release.1171671789" name="ARM v7 Print Size" superClass="xilinx.gnu.armv7.size.release"/> </toolChain> </folderInfo> - <sourceEntries> - <entry excluding="gen_diagram|test" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/> - </sourceEntries> </configuration> </storageModule> <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> @@ -170,33 +152,29 @@ </storageModule> <storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/> <storageModule moduleId="cdtBuildSystem" version="4.0.0"> - <project id="modular_quad_pid.xilinx.gnu.arm.exe.832182557" name="Xilinx ARM Executable" projectType="xilinx.gnu.arm.exe"/> - </storageModule> - <storageModule moduleId="refreshScope" versionNumber="2"> - <configuration configurationName="Debug"> - <resource resourceType="PROJECT" workspacePath="/modular_quad_pid"/> - </configuration> - <configuration configurationName="Release"> - <resource resourceType="PROJECT" workspacePath="/modular_quad_pid"/> - </configuration> + <project id="real_quad.xilinx.gnu.armv7.exe.673619442" name="Xilinx ARM v7 Executable" projectType="xilinx.gnu.armv7.exe"/> </storageModule> - <storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/> <storageModule moduleId="scannerConfiguration"> <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/> - <scannerConfigBuildInfo instanceId="xilinx.gnu.arm.exe.debug.980189137;xilinx.gnu.arm.exe.debug.980189137."> - <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.xilinx.managedbuilder.ui.ARMGCCManagedMakePerProjectProfileC"/> + <scannerConfigBuildInfo instanceId="xilinx.gnu.armv7.exe.debug.1245217687;xilinx.gnu.armv7.exe.debug.1245217687.;xilinx.gnu.armv7.c.toolchain.compiler.debug.537645504;xilinx.gnu.armv7.c.compiler.input.276088888"> + <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.xilinx.managedbuilder.ui.ARMA53X32GCCManagedMakePerProjectProfileC"/> </scannerConfigBuildInfo> - <scannerConfigBuildInfo instanceId="xilinx.gnu.arm.exe.release.255973624;xilinx.gnu.arm.exe.release.255973624.;xilinx.gnu.arm.c.toolchain.compiler.release.85270120;xilinx.gnu.arm.c.compiler.input.846429887"> - <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.xilinx.managedbuilder.ui.ARMGCCManagedMakePerProjectProfileC"/> + <scannerConfigBuildInfo instanceId="xilinx.gnu.armv7.exe.release.5476642;xilinx.gnu.armv7.exe.release.5476642.;xilinx.gnu.armv7.c.toolchain.compiler.release.1774347966;xilinx.gnu.armv7.c.compiler.input.1905976603"> + <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.xilinx.managedbuilder.ui.ARMA53X32GCCManagedMakePerProjectProfileC"/> </scannerConfigBuildInfo> - <scannerConfigBuildInfo instanceId="xilinx.gnu.arm.exe.debug.980189137"> - <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.xilinx.managedbuilder.ui.ARMGCCManagedMakePerProjectProfileC"/> + <scannerConfigBuildInfo instanceId="xilinx.gnu.armv7.exe.release.5476642;xilinx.gnu.armv7.exe.release.5476642."> + <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.xilinx.managedbuilder.ui.ARMA53X32GCCManagedMakePerProjectProfileC"/> </scannerConfigBuildInfo> - <scannerConfigBuildInfo instanceId="xilinx.gnu.arm.exe.release.255973624;xilinx.gnu.arm.exe.release.255973624."> - <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.xilinx.managedbuilder.ui.ARMGCCManagedMakePerProjectProfileC"/> - </scannerConfigBuildInfo> - <scannerConfigBuildInfo instanceId="xilinx.gnu.arm.exe.debug.980189137;xilinx.gnu.arm.exe.debug.980189137.;xilinx.gnu.arm.c.toolchain.compiler.debug.177835003;xilinx.gnu.arm.c.compiler.input.909725989"> - <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.xilinx.managedbuilder.ui.ARMGCCManagedMakePerProjectProfileC"/> + <scannerConfigBuildInfo instanceId="xilinx.gnu.armv7.exe.debug.1245217687;xilinx.gnu.armv7.exe.debug.1245217687."> + <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.xilinx.managedbuilder.ui.ARMA53X32GCCManagedMakePerProjectProfileC"/> </scannerConfigBuildInfo> </storageModule> + <storageModule moduleId="refreshScope" versionNumber="2"> + <configuration configurationName="Debug"> + <resource resourceType="PROJECT" workspacePath="/real_quad"/> + </configuration> + <configuration configurationName="Release"> + <resource resourceType="PROJECT" workspacePath="/real_quad"/> + </configuration> + </storageModule> </cproject> diff --git a/quad/xsdk_workspace_vivado/real_quad/.gitignore b/quad/xsdk_workspace_vivado/real_quad/.gitignore index 8274dfc9f..3df573fe6 100644 --- a/quad/xsdk_workspace_vivado/real_quad/.gitignore +++ b/quad/xsdk_workspace_vivado/real_quad/.gitignore @@ -1,7 +1 @@ -*.o -*.d -*.elf -*.size -bootimage/ -Debug/ -Release/ \ No newline at end of file +/Debug/ diff --git a/quad/xsdk_workspace_vivado/real_quad/.project b/quad/xsdk_workspace_vivado/real_quad/.project index 46c57bad4..e69d2ea83 100644 --- a/quad/xsdk_workspace_vivado/real_quad/.project +++ b/quad/xsdk_workspace_vivado/real_quad/.project @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <projectDescription> <name>real_quad</name> - <comment></comment> + <comment>Created by SDK v2018.2. system_bsp - ps7_cortexa9_0</comment> <projects> <project>system_bsp</project> </projects> @@ -32,7 +32,7 @@ <link> <name>ext/computation_graph</name> <type>2</type> - <locationURI>QUAD_LOC/src/computation_graph</locationURI> + <location>/local/ucart/MicroCART/quad/src/computation_graph</location> </link> <link> <name>ext/graph_blocks</name> @@ -42,26 +42,44 @@ <link> <name>ext/quad_app</name> <type>2</type> - <locationURI>QUAD_LOC/src/quad_app</locationURI> + <location>/local/ucart/MicroCART/quad/src/quad_app</location> </link> <link> <name>ext/queue</name> <type>2</type> - <locationURI>QUAD_LOC/src/queue</locationURI> + <location>/local/ucart/MicroCART/quad/src/queue</location> </link> </linkedResources> <filteredResources> <filter> - <id>1512949820706</id> - <name></name> + <id>1539639053206</id> + <name>ext/commands</name> + <type>5</type> + <matcher> + <id>org.eclipse.ui.ide.multiFilter</id> + <arguments>1.0-name-matches-false-false-*.c</arguments> + </matcher> + </filter> + <filter> + <id>1539639053211</id> + <name>ext/commands</name> + <type>5</type> + <matcher> + <id>org.eclipse.ui.ide.multiFilter</id> + <arguments>1.0-name-matches-false-false-*.h</arguments> + </matcher> + </filter> + <filter> + <id>1539639053214</id> + <name>ext/commands</name> <type>10</type> <matcher> <id>org.eclipse.ui.ide.multiFilter</id> - <arguments>1.0-name-matches-false-false-obj</arguments> + <arguments>1.0-name-matches-false-false-*</arguments> </matcher> </filter> <filter> - <id>0</id> + <id>1539639034966</id> <name>ext/computation_graph</name> <type>5</type> <matcher> @@ -70,7 +88,7 @@ </matcher> </filter> <filter> - <id>0</id> + <id>1539639034970</id> <name>ext/computation_graph</name> <type>5</type> <matcher> @@ -79,7 +97,7 @@ </matcher> </filter> <filter> - <id>0</id> + <id>1539639034973</id> <name>ext/computation_graph</name> <type>10</type> <matcher> @@ -88,7 +106,34 @@ </matcher> </filter> <filter> - <id>0</id> + <id>1539639011807</id> + <name>ext/graph_blocks</name> + <type>5</type> + <matcher> + <id>org.eclipse.ui.ide.multiFilter</id> + <arguments>1.0-name-matches-false-false-*.c</arguments> + </matcher> + </filter> + <filter> + <id>1539639011810</id> + <name>ext/graph_blocks</name> + <type>5</type> + <matcher> + <id>org.eclipse.ui.ide.multiFilter</id> + <arguments>1.0-name-matches-false-false-*.h</arguments> + </matcher> + </filter> + <filter> + <id>1539639011815</id> + <name>ext/graph_blocks</name> + <type>10</type> + <matcher> + <id>org.eclipse.ui.ide.multiFilter</id> + <arguments>1.0-name-matches-false-false-*</arguments> + </matcher> + </filter> + <filter> + <id>1539638989698</id> <name>ext/quad_app</name> <type>5</type> <matcher> @@ -97,7 +142,7 @@ </matcher> </filter> <filter> - <id>0</id> + <id>1539638989701</id> <name>ext/quad_app</name> <type>5</type> <matcher> @@ -106,7 +151,7 @@ </matcher> </filter> <filter> - <id>0</id> + <id>1539638989706</id> <name>ext/quad_app</name> <type>10</type> <matcher> @@ -115,7 +160,7 @@ </matcher> </filter> <filter> - <id>0</id> + <id>1539638949606</id> <name>ext/queue</name> <type>5</type> <matcher> @@ -124,28 +169,22 @@ </matcher> </filter> <filter> - <id>0</id> + <id>1539638949607</id> <name>ext/queue</name> - <type>5</type> + <type>10</type> <matcher> <id>org.eclipse.ui.ide.multiFilter</id> - <arguments>1.0-name-matches-false-false-*.h</arguments> + <arguments>1.0-name-matches-false-false-*</arguments> </matcher> </filter> <filter> - <id>0</id> + <id>1539638949610</id> <name>ext/queue</name> - <type>10</type> + <type>5</type> <matcher> <id>org.eclipse.ui.ide.multiFilter</id> - <arguments>1.0-name-matches-false-false-*</arguments> + <arguments>1.0-name-matches-false-false-*.h</arguments> </matcher> </filter> </filteredResources> - <variableList> - <variable> - <name>QUAD_LOC</name> - <value>$%7BPARENT-1-WORKSPACE_LOC%7D</value> - </variable> - </variableList> </projectDescription> diff --git a/quad/xsdk_workspace_vivado/recorder_test/src/Xilinx.spec b/quad/xsdk_workspace_vivado/real_quad/src/Xilinx.spec similarity index 100% rename from quad/xsdk_workspace_vivado/recorder_test/src/Xilinx.spec rename to quad/xsdk_workspace_vivado/real_quad/src/Xilinx.spec diff --git a/quad/xsdk_workspace_vivado/real_quad/src/hw_impl_zybo.c b/quad/xsdk_workspace_vivado/real_quad/src/hw_impl_zybo.c index 43515c5d0..4ebdef185 100644 --- a/quad/xsdk_workspace_vivado/real_quad/src/hw_impl_zybo.c +++ b/quad/xsdk_workspace_vivado/real_quad/src/hw_impl_zybo.c @@ -64,15 +64,6 @@ struct TimerDriver create_zybo_global_timer() { global_timer.read = zybo_global_timer_read; return global_timer; } -// -//struct TimerDriver create_zybo_axi_timer() { -// struct TimerDriver axi_timer; -// axi_timer.state = NULL; -// //axi_timer.reset = zybo_axi_timer_reset; -// axi_timer.restart = zybo_axi_timer_restart; -// axi_timer.read = zybo_axi_timer_read; -// return axi_timer; -//} struct LEDDriver create_zybo_mio7_led() { struct LEDDriver mio7_led; diff --git a/quad/xsdk_workspace_vivado/real_quad/src/hw_impl_zybo_tests.c b/quad/xsdk_workspace_vivado/real_quad/src/hw_impl_zybo_tests.c index 4b3942ea7..f7d1bb2f1 100644 --- a/quad/xsdk_workspace_vivado/real_quad/src/hw_impl_zybo_tests.c +++ b/quad/xsdk_workspace_vivado/real_quad/src/hw_impl_zybo_tests.c @@ -209,41 +209,6 @@ int test_zybo_motors() { return 0; } -/** - * Test for the AXI timer, using LEDDriver. - * - * This is essentially a basic "blink" program, using the mio7 LED - * on the Zybo board. - * - * Instructions: - * 1) Connect Zybo board to computer by USB cable. - * 2) Set the RUN_TESTS macro in main.c - * 3) Uncomment only this test in main.c - * 4) Run main.c - * 5) Observe MIO7 LED on board blinking at 1 second intervals. - */ -//int test_zybo_axi_timer() { -// //struct TimerDriver axi = create_zybo_axi_timer(); -// struct LEDDriver led = create_zybo_mio7_led(); -// //axi.reset(&axi); -// led.reset(&led); -// -// unsigned long time; -// -// while (1) { -// //axi.restart(&axi); -// time = 0; -// while (time < 1000000) { -// axi.read(&axi, &time); -// } -// led.turn_off(&led); -// while (time < 2000000) { -// axi.read(&axi, &time); -// } -// led.turn_on(&led); -// } -//} - /** * Test for the Global timer, using LEDDriver. * diff --git a/quad/xsdk_workspace_vivado/real_quad/src/main.c b/quad/xsdk_workspace_vivado/real_quad/src/main.c index 716a876a9..a71c754a7 100644 --- a/quad/xsdk_workspace_vivado/real_quad/src/main.c +++ b/quad/xsdk_workspace_vivado/real_quad/src/main.c @@ -29,7 +29,6 @@ int setup_hardware(hardware_t *hardware) { hardware->comm = create_zybo_comm(&hardware->uart_0); hardware->gps = create_zybo_gps(&hardware->uart_1); hardware->global_timer = create_zybo_global_timer(); - //hardware->axi_timer = create_zybo_axi_timer(); hardware->mio7_led = create_zybo_mio7_led(); hardware->sys = create_zybo_system(); hardware->i2c_0 = create_zybo_i2c(0); diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/.cproject b/quad/xsdk_workspace_vivado/real_quad_fresh/.cproject deleted file mode 100644 index 797766186..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/.cproject +++ /dev/null @@ -1,202 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage"> - <storageModule moduleId="org.eclipse.cdt.core.settings"> - <cconfiguration id="xilinx.gnu.arm.exe.debug.980189137"> - <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="xilinx.gnu.arm.exe.debug.980189137" moduleId="org.eclipse.cdt.core.settings" name="Debug"> - <externalSettings/> - <extensions> - <extension id="com.xilinx.sdk.managedbuilder.XELF.arm" point="org.eclipse.cdt.core.BinaryParser"/> - <extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> - <extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/> - <extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> - <extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> - <extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> - </extensions> - </storageModule> - <storageModule moduleId="cdtBuildSystem" version="4.0.0"> - <configuration artifactExtension="elf" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug" cleanCommand="rm -rf" description="" id="xilinx.gnu.arm.exe.debug.980189137" name="Debug" parent="xilinx.gnu.arm.exe.debug"> - <folderInfo id="xilinx.gnu.arm.exe.debug.980189137." name="/" resourcePath=""> - <toolChain id="xilinx.gnu.arm.exe.debug.toolchain.1195127676" name="Xilinx ARM GNU Toolchain" resourceTypeBasedDiscovery="true" superClass="xilinx.gnu.arm.exe.debug.toolchain"> - <targetPlatform binaryParser="com.xilinx.sdk.managedbuilder.XELF.arm" id="xilinx.arm.target.gnu.base.debug.2072264921" isAbstract="false" name="Debug Platform" superClass="xilinx.arm.target.gnu.base.debug"/> - <builder buildPath="${workspace_loc:/modular_quad_pid}/Debug" enableAutoBuild="true" id="xilinx.gnu.arm.toolchain.builder.debug.2124876787" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="GNU make" superClass="xilinx.gnu.arm.toolchain.builder.debug"/> - <tool id="xilinx.gnu.arm.c.toolchain.assembler.debug.192056667" name="ARM gcc assembler" superClass="xilinx.gnu.arm.c.toolchain.assembler.debug"> - <inputType id="xilinx.gnu.assembler.input.532832448" superClass="xilinx.gnu.assembler.input"/> - </tool> - <tool id="xilinx.gnu.arm.c.toolchain.compiler.debug.177835003" name="ARM gcc compiler" superClass="xilinx.gnu.arm.c.toolchain.compiler.debug"> - <option defaultValue="gnu.c.optimization.level.none" id="xilinx.gnu.compiler.option.optimization.level.1900496019" name="Optimization Level" superClass="xilinx.gnu.compiler.option.optimization.level" value="gnu.c.optimization.level.none" valueType="enumerated"/> - <option id="xilinx.gnu.compiler.option.debugging.level.1207856754" name="Debug Level" superClass="xilinx.gnu.compiler.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/> - <option id="xilinx.gnu.compiler.inferred.swplatform.includes.2123463819" name="Software Platform Include Path" superClass="xilinx.gnu.compiler.inferred.swplatform.includes" valueType="includePath"/> - <option id="xilinx.gnu.compiler.symbols.defined.1696008720" name="Defined symbols (-D)" superClass="xilinx.gnu.compiler.symbols.defined"/> - <option id="xilinx.gnu.compiler.dircategory.includes.1211006365" name="Include Paths" superClass="xilinx.gnu.compiler.dircategory.includes" valueType="includePath"> - <listOptionValue builtIn="false" value="../../system_bsp/ps7_cortexa9_0/include"/> - <listOptionValue builtIn="false" value="../../standalone_bsp_0/ps7_cortexa9_0/include"/> - <listOptionValue builtIn="false" value="/local/ucart/MicroCART/quad/src/quad_app"/> - <listOptionValue builtIn="false" value="/local/ucart/MicroCART/quad/src/queue"/> - <listOptionValue builtIn="false" value="/local/ucart/MicroCART/quad/src/graph_blocks"/> - <listOptionValue builtIn="false" value="/local/ucart/MicroCART/quad/src/computation_graph"/> - <listOptionValue builtIn="false" value="/local/ucart/MicroCART/quad/src/commands"/> - </option> - <inputType id="xilinx.gnu.arm.c.compiler.input.909725989" name="C source files" superClass="xilinx.gnu.arm.c.compiler.input"/> - </tool> - <tool id="xilinx.gnu.arm.cxx.toolchain.compiler.debug.1470236349" name="ARM g++ compiler" superClass="xilinx.gnu.arm.cxx.toolchain.compiler.debug"> - <option defaultValue="gnu.c.optimization.level.none" id="xilinx.gnu.compiler.option.optimization.level.9972228" name="Optimization Level" superClass="xilinx.gnu.compiler.option.optimization.level" valueType="enumerated"/> - <option id="xilinx.gnu.compiler.option.debugging.level.595503730" name="Debug Level" superClass="xilinx.gnu.compiler.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/> - <option id="xilinx.gnu.compiler.inferred.swplatform.includes.53367111" name="Software Platform Include Path" superClass="xilinx.gnu.compiler.inferred.swplatform.includes" valueType="includePath"> - <listOptionValue builtIn="false" value="../../standalone_bsp_0/ps7_cortexa9_0/include"/> - </option> - </tool> - <tool id="xilinx.gnu.arm.toolchain.archiver.585254344" name="ARM archiver" superClass="xilinx.gnu.arm.toolchain.archiver"/> - <tool id="xilinx.gnu.arm.c.toolchain.linker.debug.360488201" name="ARM gcc linker" superClass="xilinx.gnu.arm.c.toolchain.linker.debug"> - <option id="xilinx.gnu.linker.inferred.swplatform.lpath.47881921" name="Software Platform Library Path" superClass="xilinx.gnu.linker.inferred.swplatform.lpath" valueType="libPaths"> - <listOptionValue builtIn="false" value="../../standalone_bsp_0/ps7_cortexa9_0/lib"/> - </option> - <option id="xilinx.gnu.linker.inferred.swplatform.flags.349145084" name="Software Platform Inferred Flags" superClass="xilinx.gnu.linker.inferred.swplatform.flags" valueType="libs"> - <listOptionValue builtIn="false" value="-Wl,--start-group,-lxil,-lgcc,-lc,--end-group"/> - </option> - <option id="xilinx.gnu.c.linker.option.lscript.972374298" name="Linker Script" superClass="xilinx.gnu.c.linker.option.lscript" value="../src/lscript.ld" valueType="string"/> - <option id="xilinx.gnu.c.link.option.libs.1025826490" name="Libraries (-l)" superClass="xilinx.gnu.c.link.option.libs" valueType="libs"> - <listOptionValue builtIn="false" value="m"/> - </option> - <option id="xilinx.gnu.c.link.option.paths.1462160427" name="Library search path (-L)" superClass="xilinx.gnu.c.link.option.paths"/> - <inputType id="xilinx.gnu.linker.input.777404607" superClass="xilinx.gnu.linker.input"> - <additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/> - <additionalInput kind="additionalinput" paths="$(LIBS)"/> - </inputType> - <inputType id="xilinx.gnu.linker.input.lscript.634888687" name="Linker Script" superClass="xilinx.gnu.linker.input.lscript"/> - </tool> - <tool id="xilinx.gnu.arm.cxx.toolchain.linker.debug.1921379343" name="ARM g++ linker" superClass="xilinx.gnu.arm.cxx.toolchain.linker.debug"> - <option id="xilinx.gnu.linker.inferred.swplatform.lpath.1819794269" name="Software Platform Library Path" superClass="xilinx.gnu.linker.inferred.swplatform.lpath" valueType="libPaths"> - <listOptionValue builtIn="false" value="../../standalone_bsp_0/ps7_cortexa9_0/lib"/> - </option> - <option id="xilinx.gnu.linker.inferred.swplatform.flags.1650054208" name="Software Platform Inferred Flags" superClass="xilinx.gnu.linker.inferred.swplatform.flags" valueType="libs"> - <listOptionValue builtIn="false" value="-Wl,--start-group,-lxil,-lgcc,-lc,--end-group"/> - </option> - <option id="xilinx.gnu.c.linker.option.lscript.1506564015" name="Linker Script" superClass="xilinx.gnu.c.linker.option.lscript" value="../src/lscript.ld" valueType="string"/> - </tool> - <tool id="xilinx.gnu.arm.size.debug.923967150" name="ARM Print Size" superClass="xilinx.gnu.arm.size.debug"/> - </toolChain> - </folderInfo> - <sourceEntries> - <entry excluding="gen_diagram|test" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/> - </sourceEntries> - </configuration> - </storageModule> - <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> - </cconfiguration> - <cconfiguration id="xilinx.gnu.arm.exe.release.255973624"> - <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="xilinx.gnu.arm.exe.release.255973624" moduleId="org.eclipse.cdt.core.settings" name="Release"> - <externalSettings/> - <extensions> - <extension id="com.xilinx.sdk.managedbuilder.XELF.arm" point="org.eclipse.cdt.core.BinaryParser"/> - <extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> - <extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/> - <extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> - <extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> - <extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> - </extensions> - </storageModule> - <storageModule moduleId="cdtBuildSystem" version="4.0.0"> - <configuration artifactExtension="elf" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release" cleanCommand="rm -rf" description="" id="xilinx.gnu.arm.exe.release.255973624" name="Release" parent="xilinx.gnu.arm.exe.release"> - <folderInfo id="xilinx.gnu.arm.exe.release.255973624." name="/" resourcePath=""> - <toolChain id="xilinx.gnu.arm.exe.release.toolchain.1375808537" name="Xilinx ARM GNU Toolchain" superClass="xilinx.gnu.arm.exe.release.toolchain"> - <targetPlatform binaryParser="com.xilinx.sdk.managedbuilder.XELF.arm" id="xilinx.arm.target.gnu.base.release.230721338" isAbstract="false" name="Release Platform" superClass="xilinx.arm.target.gnu.base.release"/> - <builder buildPath="${workspace_loc:/modular_quad_pid}/Release" enableAutoBuild="true" id="xilinx.gnu.arm.toolchain.builder.release.122813927" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="GNU make" superClass="xilinx.gnu.arm.toolchain.builder.release"/> - <tool id="xilinx.gnu.arm.c.toolchain.assembler.release.1899854338" name="ARM gcc assembler" superClass="xilinx.gnu.arm.c.toolchain.assembler.release"> - <inputType id="xilinx.gnu.assembler.input.756511915" superClass="xilinx.gnu.assembler.input"/> - </tool> - <tool id="xilinx.gnu.arm.c.toolchain.compiler.release.85270120" name="ARM gcc compiler" superClass="xilinx.gnu.arm.c.toolchain.compiler.release"> - <option defaultValue="gnu.c.optimization.level.more" id="xilinx.gnu.compiler.option.optimization.level.515686013" name="Optimization Level" superClass="xilinx.gnu.compiler.option.optimization.level" valueType="enumerated"/> - <option id="xilinx.gnu.compiler.option.debugging.level.1121150517" name="Debug Level" superClass="xilinx.gnu.compiler.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/> - <option id="xilinx.gnu.compiler.inferred.swplatform.includes.687694973" name="Software Platform Include Path" superClass="xilinx.gnu.compiler.inferred.swplatform.includes" valueType="includePath"> - <listOptionValue builtIn="false" value="../../standalone_bsp_0/ps7_cortexa9_0/include"/> - </option> - <option id="xilinx.gnu.compiler.symbols.defined.1562495938" name="Defined symbols (-D)" superClass="xilinx.gnu.compiler.symbols.defined" valueType="definedSymbols"> - <listOptionValue builtIn="false" value="NDEBUG=1"/> - </option> - <option id="xilinx.gnu.compiler.dircategory.includes.1873624761" name="Include Paths" superClass="xilinx.gnu.compiler.dircategory.includes" valueType="includePath"> - <listOptionValue builtIn="false" value="../../system_bsp/ps7_cortexa9_0/include"/> - <listOptionValue builtIn="false" value=""${workspace_loc:/real_quad/ext/computation_graph}""/> - <listOptionValue builtIn="false" value=""${workspace_loc:/real_quad/ext/quad_app}""/> - <listOptionValue builtIn="false" value=""${workspace_loc:/real_quad/ext/queue}""/> - <listOptionValue builtIn="false" value=""${workspace_loc:/real_quad/ext/commands}""/> - <listOptionValue builtIn="false" value=""${workspace_loc:/real_quad/ext/graph_blocks}""/> - </option> - <inputType id="xilinx.gnu.arm.c.compiler.input.846429887" name="C source files" superClass="xilinx.gnu.arm.c.compiler.input"/> - </tool> - <tool id="xilinx.gnu.arm.cxx.toolchain.compiler.release.1846278293" name="ARM g++ compiler" superClass="xilinx.gnu.arm.cxx.toolchain.compiler.release"> - <option defaultValue="gnu.c.optimization.level.more" id="xilinx.gnu.compiler.option.optimization.level.1613253262" name="Optimization Level" superClass="xilinx.gnu.compiler.option.optimization.level" valueType="enumerated"/> - <option id="xilinx.gnu.compiler.option.debugging.level.1485305325" name="Debug Level" superClass="xilinx.gnu.compiler.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/> - <option id="xilinx.gnu.compiler.inferred.swplatform.includes.2144106422" name="Software Platform Include Path" superClass="xilinx.gnu.compiler.inferred.swplatform.includes" valueType="includePath"> - <listOptionValue builtIn="false" value="../../standalone_bsp_0/ps7_cortexa9_0/include"/> - </option> - </tool> - <tool id="xilinx.gnu.arm.toolchain.archiver.86822110" name="ARM archiver" superClass="xilinx.gnu.arm.toolchain.archiver"/> - <tool id="xilinx.gnu.arm.c.toolchain.linker.release.264708896" name="ARM gcc linker" superClass="xilinx.gnu.arm.c.toolchain.linker.release"> - <option id="xilinx.gnu.linker.inferred.swplatform.lpath.444912795" name="Software Platform Library Path" superClass="xilinx.gnu.linker.inferred.swplatform.lpath" valueType="libPaths"> - <listOptionValue builtIn="false" value="../../standalone_bsp_0/ps7_cortexa9_0/lib"/> - </option> - <option id="xilinx.gnu.linker.inferred.swplatform.flags.1169214283" name="Software Platform Inferred Flags" superClass="xilinx.gnu.linker.inferred.swplatform.flags" valueType="libs"> - <listOptionValue builtIn="false" value="-Wl,--start-group,-lxil,-lgcc,-lc,--end-group"/> - </option> - <option id="xilinx.gnu.c.linker.option.lscript.1266246445" name="Linker Script" superClass="xilinx.gnu.c.linker.option.lscript" value="../src/lscript.ld" valueType="string"/> - <option id="xilinx.gnu.c.link.option.libs.962400757" name="Libraries (-l)" superClass="xilinx.gnu.c.link.option.libs" valueType="libs"> - <listOptionValue builtIn="false" value="m"/> - </option> - <inputType id="xilinx.gnu.linker.input.1933167678" superClass="xilinx.gnu.linker.input"> - <additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/> - <additionalInput kind="additionalinput" paths="$(LIBS)"/> - </inputType> - <inputType id="xilinx.gnu.linker.input.lscript.574206172" name="Linker Script" superClass="xilinx.gnu.linker.input.lscript"/> - </tool> - <tool id="xilinx.gnu.arm.cxx.toolchain.linker.release.1512126497" name="ARM g++ linker" superClass="xilinx.gnu.arm.cxx.toolchain.linker.release"> - <option id="xilinx.gnu.linker.inferred.swplatform.lpath.1491656562" name="Software Platform Library Path" superClass="xilinx.gnu.linker.inferred.swplatform.lpath" valueType="libPaths"> - <listOptionValue builtIn="false" value="../../standalone_bsp_0/ps7_cortexa9_0/lib"/> - </option> - <option id="xilinx.gnu.linker.inferred.swplatform.flags.1353247076" name="Software Platform Inferred Flags" superClass="xilinx.gnu.linker.inferred.swplatform.flags" valueType="libs"> - <listOptionValue builtIn="false" value="-Wl,--start-group,-lxil,-lgcc,-lc,--end-group"/> - </option> - <option id="xilinx.gnu.c.linker.option.lscript.486002186" name="Linker Script" superClass="xilinx.gnu.c.linker.option.lscript" value="../src/lscript.ld" valueType="string"/> - </tool> - <tool id="xilinx.gnu.arm.size.release.362029751" name="ARM Print Size" superClass="xilinx.gnu.arm.size.release"/> - </toolChain> - </folderInfo> - <sourceEntries> - <entry excluding="gen_diagram|test" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/> - </sourceEntries> - </configuration> - </storageModule> - <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> - </cconfiguration> - </storageModule> - <storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/> - <storageModule moduleId="cdtBuildSystem" version="4.0.0"> - <project id="modular_quad_pid.xilinx.gnu.arm.exe.832182557" name="Xilinx ARM Executable" projectType="xilinx.gnu.arm.exe"/> - </storageModule> - <storageModule moduleId="refreshScope" versionNumber="2"> - <configuration configurationName="Release"> - <resource resourceType="PROJECT" workspacePath="/modular_quad_pid"/> - </configuration> - <configuration configurationName="Debug"> - <resource resourceType="PROJECT" workspacePath="/modular_quad_pid"/> - </configuration> - </storageModule> - <storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/> - <storageModule moduleId="scannerConfiguration"> - <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/> - <scannerConfigBuildInfo instanceId="xilinx.gnu.arm.exe.debug.980189137;xilinx.gnu.arm.exe.debug.980189137."> - <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.xilinx.managedbuilder.ui.ARMGCCManagedMakePerProjectProfileC"/> - </scannerConfigBuildInfo> - <scannerConfigBuildInfo instanceId="xilinx.gnu.arm.exe.release.255973624;xilinx.gnu.arm.exe.release.255973624.;xilinx.gnu.arm.c.toolchain.compiler.release.85270120;xilinx.gnu.arm.c.compiler.input.846429887"> - <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.xilinx.managedbuilder.ui.ARMGCCManagedMakePerProjectProfileC"/> - </scannerConfigBuildInfo> - <scannerConfigBuildInfo instanceId="xilinx.gnu.arm.exe.debug.980189137"> - <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.xilinx.managedbuilder.ui.ARMGCCManagedMakePerProjectProfileC"/> - </scannerConfigBuildInfo> - <scannerConfigBuildInfo instanceId="xilinx.gnu.arm.exe.release.255973624;xilinx.gnu.arm.exe.release.255973624."> - <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.xilinx.managedbuilder.ui.ARMGCCManagedMakePerProjectProfileC"/> - </scannerConfigBuildInfo> - <scannerConfigBuildInfo instanceId="xilinx.gnu.arm.exe.debug.980189137;xilinx.gnu.arm.exe.debug.980189137.;xilinx.gnu.arm.c.toolchain.compiler.debug.177835003;xilinx.gnu.arm.c.compiler.input.909725989"> - <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.xilinx.managedbuilder.ui.ARMGCCManagedMakePerProjectProfileC"/> - </scannerConfigBuildInfo> - </storageModule> -</cproject> diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/.gitignore b/quad/xsdk_workspace_vivado/real_quad_fresh/.gitignore deleted file mode 100644 index 8274dfc9f..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/.gitignore +++ /dev/null @@ -1,7 +0,0 @@ -*.o -*.d -*.elf -*.size -bootimage/ -Debug/ -Release/ \ No newline at end of file diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/.project b/quad/xsdk_workspace_vivado/real_quad_fresh/.project deleted file mode 100644 index 3c4c0ec69..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/.project +++ /dev/null @@ -1,152 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<projectDescription> - <name>real_quad</name> - <comment></comment> - <projects> - <project>standalone_bsp_0</project> - <project>system_hw_platform</project> - </projects> - <buildSpec> - <buildCommand> - <name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name> - <arguments> - </arguments> - </buildCommand> - <buildCommand> - <name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name> - <triggers>full,incremental,</triggers> - <arguments> - </arguments> - </buildCommand> - </buildSpec> - <natures> - <nature>org.eclipse.cdt.core.cnature</nature> - <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature> - <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature> - </natures> - <linkedResources> - <link> - <name>ext/commands</name> - <type>2</type> - <location>/local/ucart/MicroCART/quad/src/commands</location> - </link> - <link> - <name>ext/computation_graph</name> - <type>2</type> - <locationURI>QUAD_LOC/src/computation_graph</locationURI> - </link> - <link> - <name>ext/graph_blocks</name> - <type>2</type> - <location>/local/ucart/MicroCART/quad/src/graph_blocks</location> - </link> - <link> - <name>ext/quad_app</name> - <type>2</type> - <locationURI>QUAD_LOC/src/quad_app</locationURI> - </link> - <link> - <name>ext/queue</name> - <type>2</type> - <locationURI>QUAD_LOC/src/queue</locationURI> - </link> - </linkedResources> - <filteredResources> - <filter> - <id>1490997289335</id> - <name></name> - <type>10</type> - <matcher> - <id>org.eclipse.ui.ide.multiFilter</id> - <arguments>1.0-name-matches-false-false-obj</arguments> - </matcher> - </filter> - <filter> - <id>0</id> - <name>ext/computation_graph</name> - <type>5</type> - <matcher> - <id>org.eclipse.ui.ide.multiFilter</id> - <arguments>1.0-name-matches-false-false-*.c</arguments> - </matcher> - </filter> - <filter> - <id>0</id> - <name>ext/computation_graph</name> - <type>5</type> - <matcher> - <id>org.eclipse.ui.ide.multiFilter</id> - <arguments>1.0-name-matches-false-false-*.h</arguments> - </matcher> - </filter> - <filter> - <id>0</id> - <name>ext/computation_graph</name> - <type>10</type> - <matcher> - <id>org.eclipse.ui.ide.multiFilter</id> - <arguments>1.0-name-matches-false-false-*</arguments> - </matcher> - </filter> - <filter> - <id>0</id> - <name>ext/quad_app</name> - <type>5</type> - <matcher> - <id>org.eclipse.ui.ide.multiFilter</id> - <arguments>1.0-name-matches-false-false-*.c</arguments> - </matcher> - </filter> - <filter> - <id>0</id> - <name>ext/quad_app</name> - <type>5</type> - <matcher> - <id>org.eclipse.ui.ide.multiFilter</id> - <arguments>1.0-name-matches-false-false-*.h</arguments> - </matcher> - </filter> - <filter> - <id>0</id> - <name>ext/quad_app</name> - <type>10</type> - <matcher> - <id>org.eclipse.ui.ide.multiFilter</id> - <arguments>1.0-name-matches-false-false-*</arguments> - </matcher> - </filter> - <filter> - <id>0</id> - <name>ext/queue</name> - <type>5</type> - <matcher> - <id>org.eclipse.ui.ide.multiFilter</id> - <arguments>1.0-name-matches-false-false-*.c</arguments> - </matcher> - </filter> - <filter> - <id>0</id> - <name>ext/queue</name> - <type>5</type> - <matcher> - <id>org.eclipse.ui.ide.multiFilter</id> - <arguments>1.0-name-matches-false-false-*.h</arguments> - </matcher> - </filter> - <filter> - <id>0</id> - <name>ext/queue</name> - <type>10</type> - <matcher> - <id>org.eclipse.ui.ide.multiFilter</id> - <arguments>1.0-name-matches-false-false-*</arguments> - </matcher> - </filter> - </filteredResources> - <variableList> - <variable> - <name>QUAD_LOC</name> - <value>$%7BPARENT-1-WORKSPACE_LOC%7D</value> - </variable> - </variableList> -</projectDescription> diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/.settings/org.eclipse.cdt.codan.core.prefs b/quad/xsdk_workspace_vivado/real_quad_fresh/.settings/org.eclipse.cdt.codan.core.prefs deleted file mode 100644 index 8e0550446..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/.settings/org.eclipse.cdt.codan.core.prefs +++ /dev/null @@ -1,34 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},implicit\=>false} -org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} -org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},implicit\=>false} -org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} -org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} -org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} -org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} -org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false} -org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},unknown\=>false,exceptions\=>()} -org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} -org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},skip\=>true} -org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} -org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} -org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} -org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} -org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} -org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} -org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} -org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} -org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} -org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} -org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} -org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} -org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} -org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} -org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},macro\=>true,exceptions\=>()} -org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},paramNot\=>false} -org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},else\=>false,afterelse\=>false} -org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} -org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},macro\=>true} -org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},macro\=>true} -org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},macro\=>true,exceptions\=>("@(\#)","$Id")} -org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/README.md b/quad/xsdk_workspace_vivado/real_quad_fresh/README.md deleted file mode 100644 index 88089fe73..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/README.md +++ /dev/null @@ -1,10 +0,0 @@ -# The Real Quad -_It is real, because it flies._ - -Welcome to the most lame README in MicroCART. Everything we are about to say -has already been said elsewhere, including [Our quad folder README][1], [xsdk_workspace README][2], and [HOW_TO_USE_XSDK markdown][3]. -So we aren't saying it here. Hence, this README is pretty empty. Hence... lame. - -[1]: ../README.md -[2]: ../../README.md -[3]: ../../doc/how_to_use_XSDK.md diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/ext/__CAUTION__.md b/quad/xsdk_workspace_vivado/real_quad_fresh/ext/__CAUTION__.md deleted file mode 100644 index 6f7e2a00f..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/ext/__CAUTION__.md +++ /dev/null @@ -1,12 +0,0 @@ -**************************************** - Do not edit files in this directory! -**************************************** - -The fine print ----- - -Files in this directory are simlinked to external libraries. They exist here -purely to help fascilitate the build process and permit debugging of those -libraries within XSDK. Editing them here might build within XSDK, but it might -break in its original context. Hence, don't edit these files within XSDK. Edit -them within a workflow that uses the Makefile in the top-level quad folder. diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo.c b/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo.c deleted file mode 100644 index fdc34f8ac..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo.c +++ /dev/null @@ -1,116 +0,0 @@ -#include "hw_impl_zybo.h" - -struct UARTDriver create_zybo_uart(int devId) { - struct UARTDriver uart; - uart.state = malloc(sizeof(struct ZyboUARTState)); - struct ZyboUARTState *state = uart.state; - state->inst = malloc(sizeof(XUartPs)); - state->queue = queue_malloc(MAX_UART_BUFFER_SIZE); - state->devId = devId; - - uart.reset = zybo_uart_reset; - uart.write = zybo_uart_write; - uart.read = zybo_uart_read; - return uart; -} - -struct GPSDriver create_zybo_gps(struct UARTDriver *uart) { - struct GPSDriver gps; - gps.uart = uart; - gps.reset = zybo_gps_reset; - gps.read = zybo_gps_read; - return gps; -} - -struct CommDriver create_zybo_comm(struct UARTDriver *uart) { - struct CommDriver comm; - comm.uart = uart; - return comm; -} - -struct MotorDriver create_zybo_motors() { - struct MotorDriver motors; - motors.state = NULL; - motors.reset = zybo_motor_reset; - motors.write = zybo_motor_write; - return motors; -} - -struct RCReceiverDriver create_zybo_rc_receiver() { - struct RCReceiverDriver rc_receiver; - rc_receiver.state = NULL; - rc_receiver.reset = zybo_rc_receiver_reset; - rc_receiver.read = zybo_rc_receiver_read; - return rc_receiver; -} - -struct I2CDriver create_zybo_i2c(int busId) { - struct I2CDriver i2c; - i2c.state = malloc(sizeof(struct ZyboI2CState)); - struct ZyboI2CState *state = i2c.state; - state->inst = malloc(sizeof(XIicPs)); - state->busId = busId; - i2c.reset = zybo_i2c_reset; - i2c.write = zybo_i2c_write; - i2c.read = zybo_i2c_read; - return i2c; -} - -struct TimerDriver create_zybo_global_timer() { - struct TimerDriver global_timer; - global_timer.state = NULL; - global_timer.reset = zybo_global_timer_reset; - global_timer.restart = zybo_global_timer_restart; - global_timer.read = zybo_global_timer_read; - return global_timer; -} - -//struct TimerDriver create_zybo_axi_timer() { -// struct TimerDriver axi_timer; -// axi_timer.state = NULL; -// axi_timer.reset = zybo_axi_timer_reset; -// axi_timer.restart = zybo_axi_timer_restart; -// axi_timer.read = zybo_axi_timer_read; -// return axi_timer; -//} - -struct LEDDriver create_zybo_mio7_led() { - struct LEDDriver mio7_led; - mio7_led.state = NULL; - mio7_led.reset = zybo_mio7_led_reset; - mio7_led.turn_on = zybo_mio7_led_turn_on; - mio7_led.turn_off = zybo_mio7_led_turn_off; - return mio7_led; -} - -struct SystemDriver create_zybo_system() { - struct SystemDriver sys; - sys.state = NULL; - sys.reset = zybo_system_reset; - sys.sleep = zybo_system_sleep; - return sys; -} - -struct IMUDriver create_zybo_imu(struct I2CDriver *i2c) { - struct IMUDriver imu; - imu.i2c = i2c; - imu.reset = zybo_imu_reset; - imu.read = zybo_imu_read; - return imu; -} - -struct LidarDriver create_zybo_lidar(struct I2CDriver *i2c) { - struct LidarDriver lidar; - lidar.i2c = i2c; - lidar.reset = zybo_lidar_reset; - lidar.read = zybo_lidar_read; - return lidar; -} - -struct OpticalFlowDriver create_zybo_optical_flow(struct I2CDriver *i2c) { - struct OpticalFlowDriver of; - of.i2c = i2c; - of.reset = zybo_optical_flow_reset; - of.read = zybo_optical_flow_read; - return of; -} diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo.h b/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo.h deleted file mode 100644 index d8738b71c..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo.h +++ /dev/null @@ -1,105 +0,0 @@ -#ifndef HW_IMPL_ZYBO -#define HW_IMPL_ZYBO - -#include "hw_iface.h" - -#include <sleep.h> -#include <stdlib.h> -#include <xgpiops.h> -#include "xiicps.h" -#include "xparameters.h" -#include "xgpiops.h" -#include "xil_types.h" -#include "xscugic.h" -#include "xtime_l.h" -#include "xuartps.h" -#include "queue.h" -#include "platform.h" -#include "sleep.h" -#include "type_def.h" - -// Ideally, these defines would only be in the optical flow file, but -// i2c needs it for a certain hack -#define PX4FLOW_DEVICE_ADDR 0x42 -#define PX4FLOW_QUAL_MIN (100) - -#define MAX_UART_BUFFER_SIZE 2048 - -struct ZyboI2CState { - XIicPs *inst; - int busId; -}; - -struct ZyboUARTState { - struct Queue *queue; - XUartPs *inst; - XScuGic xscugic; - int devId; -}; - -int zybo_uart_reset(struct UARTDriver *self); -int zybo_uart_write(struct UARTDriver *self, unsigned char c); -int zybo_uart_read(struct UARTDriver *self, unsigned char *c); - -int zybo_motor_reset(struct MotorDriver *self); -int zybo_motor_write(struct MotorDriver *self, unsigned int channel, float magnitude); - -int zybo_rc_receiver_reset(struct RCReceiverDriver *self); -int zybo_rc_receiver_read(struct RCReceiverDriver *self, unsigned int channel, float *magnitude); - -int zybo_i2c_reset(struct I2CDriver *self); -int zybo_i2c_write(struct I2CDriver *self, - unsigned short device_addr, - unsigned char *data, - unsigned int length); -int zybo_i2c_read(struct I2CDriver *self, - unsigned short device_addr, - unsigned char *buff, - unsigned int length); - -int zybo_global_timer_reset(struct TimerDriver *self); -int zybo_global_timer_restart(struct TimerDriver *self); -int zybo_global_timer_read(struct TimerDriver *self, u64 *us); - -int zybo_axi_timer_reset(struct TimerDriver *self); -int zybo_axi_timer_restart(struct TimerDriver *self); -int zybo_axi_timer_read(struct TimerDriver *self, u64 *us); - -int zybo_mio7_led_reset(struct LEDDriver *self); -int zybo_mio7_led_turn_on(struct LEDDriver *self); -int zybo_mio7_led_turn_off(struct LEDDriver *self); - -int zybo_system_reset(struct SystemDriver *self); -int zybo_system_sleep(struct SystemDriver *self, unsigned long us); - -int zybo_imu_reset(struct IMUDriver *self, struct gam *gam); -int zybo_imu_read(struct IMUDriver *self, struct gam *gam); - -int zybo_lidar_reset(struct LidarDriver *self, struct lidar *lidar); -int zybo_lidar_read(struct LidarDriver *self, struct lidar *lidar); - -int zybo_optical_flow_reset(struct OpticalFlowDriver *self, struct px4flow *of); -int zybo_optical_flow_read(struct OpticalFlowDriver *self, struct px4flow *of); - -int zybo_gps_reset(struct GPSDriver *self, gps_t *gps); -int zybo_gps_read(struct GPSDriver *self, gps_t *gps); - -struct UARTDriver create_zybo_uart(int devId); -struct CommDriver create_zybo_comm(struct UARTDriver *uart); -struct GPSDriver create_zybo_gps(struct UARTDriver *uart); -struct MotorDriver create_zybo_motors(); -struct RCReceiverDriver create_zybo_rc_receiver(); -struct I2CDriver create_zybo_i2c(int busId); -struct TimerDriver create_zybo_global_timer(); -struct TimerDriver create_zybo_axi_timer(); -struct LEDDriver create_zybo_mio7_led(); -struct SystemDriver create_zybo_system(); -struct IMUDriver create_zybo_imu(struct I2CDriver *i2c); -struct LidarDriver create_zybo_lidar(struct I2CDriver *i2c); -struct OpticalFlowDriver create_zybo_optical_flow(struct I2CDriver *i2c); - -int test_zybo_i2c(); -int test_zybo_mio7_led_and_system(); -int test_zybo_rc_receivers(); - -#endif diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_global_timer.c b/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_global_timer.c deleted file mode 100644 index c1024a62f..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_global_timer.c +++ /dev/null @@ -1,18 +0,0 @@ -#include "hw_impl_zybo.h" - -int zybo_global_timer_reset(struct TimerDriver *self) { - // Nothing to initialize - return 0; -} - -int zybo_global_timer_restart(struct TimerDriver *self) { - XTime_SetTime(0); - return 0; -} - -int zybo_global_timer_read(struct TimerDriver *self, u64 *us) { - XTime time; - XTime_GetTime(&time); - *us = ((u64)time * 1000000) / COUNTS_PER_SECOND; // (ticks)(1000000us/s)(s/ticks) - return 0; -} diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_gps.c b/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_gps.c deleted file mode 100644 index ff495afdb..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_gps.c +++ /dev/null @@ -1,12 +0,0 @@ -#include "hw_iface.h" -#include "hw_impl_zybo.h" - -int zybo_gps_reset(struct GPSDriver *self, gps_t *gps) { - // TODO - return -1; -} - -int zybo_gps_read(struct GPSDriver *self, gps_t *gps) { - // TODO - return -1; -} diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_i2c.c b/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_i2c.c deleted file mode 100644 index 751ae4ccf..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_i2c.c +++ /dev/null @@ -1,485 +0,0 @@ -#include "hw_impl_zybo.h" -#include "xiicps.h" -// System configuration registers -// (Please see Appendix B: System Level Control Registers in the Zybo TRM) -#define IIC_SYSTEM_CONTROLLER_RESET_REG_ADDR (0xF8000224) -#define IO_CLK_CONTROL_REG_ADDR (0xF800012C) - -// Error code could be returned on an iic read if the watchdog timer triggers -#define IIC_RX_TIMEOUT_FAILURE (-88) -/* -// IIC0 Registers -#define IIC0_CONTROL_REG_ADDR (0xE0004000) -#define IIC0_STATUS_REG_ADDR (0xE0004004) -#define IIC0_SLAVE_ADDR_REG (0xE0004008) -#define IIC0_DATA_REG_ADDR (0xE000400C) -#define IIC0_INTR_STATUS_REG_ADDR (0xE0004010) -#define IIC0_TRANFER_SIZE_REG_ADDR (0xE0004014) -#define IIC0_INTR_EN (0xE0004024) -#define IIC0_TIMEOUT_REG_ADDR (0xE000401C) -*/ -//Interrupt Status Register Masks -#define ARB_LOST (0x200) -#define RX_UNF (0x80) -#define TX_OVF (0x40) -#define RX_OVF (0x20) -#define SLV_RDY (0x10) -#define TIME_OUT (0x08) -#define NACK (0x04) -#define MORE_DAT (0x02) -#define TRANS_COMPLETE (0x01) - -#define WRITE_INTR_MASK (ARB_LOST | TIME_OUT | RX_OVF | TX_OVF | NACK) -#define READ_INTR_MASK (ARB_LOST | TIME_OUT | RX_OVF | RX_UNF | NACK) - -#define IO_CLK_CONTROL_REG_ADDR (0xF800012C) -#define I2C0_CPU_1XCLKACT (0x00040000) -#define I2C1_CPU_1XCLKACT (0x00080000) - -int XIicPs_MasterSendPolled_ours(XIicPs *InstancePtr, u8 *MsgPtr, - int ByteCount, u16 SlaveAddr); -int XIicPs_MasterRecvPolled_ours(XIicPs *InstancePtr, u8 *MsgPtr, - int ByteCount, u16 SlaveAddr); -int XIicPs_SetupMaster(XIicPs *InstancePtr, int Role); - -int zybo_i2c_reset(struct I2CDriver *self) { - // ensure all required memory is allocated - struct ZyboI2CState *state = self->state; - if (state == NULL) return -1; - if (state->inst == NULL) return -1; - if (state->busId > 1) return -1; - int i2cID = state->busId; - XIicPs *inst = state->inst; - - //Make sure CPU_1x clk is enabled fostatusr I2C controller - u16 *aper_ctrl = (u16 *) IO_CLK_CONTROL_REG_ADDR; - u32 aper_mask = (i2cID == 0) ? (I2C0_CPU_1XCLKACT) : (I2C1_CPU_1XCLKACT); - - if (*aper_ctrl & aper_mask){ - xil_printf("CPU_1x is set to I2C0\r\n"); - } - - else { - xil_printf("CPU_1x is not set to I2C..Setting now\r\n"); - *aper_ctrl |= aper_mask; - } - - // Look up - XIicPs_Config *i2c_config = XIicPs_LookupConfig(i2cID); - XStatus status = XIicPs_CfgInitialize(inst, i2c_config, i2c_config->BaseAddress); - - // Check if initialization was successful - if(status != XST_SUCCESS){ - return -1; - } - - // Reset the controller and set the clock to 400kHz - XIicPs_Reset(inst); - XIicPs_SetSClk(inst, 400000); - - return 0; -} - -int zybo_i2c_write(struct I2CDriver *self, - unsigned short device_addr, - unsigned char *data, - unsigned int length) { - struct ZyboI2CState *state = self->state; - XIicPs *inst = state->inst; - if (device_addr == PX4FLOW_DEVICE_ADDR) { - // If we are sending a request to optical flow, drop down to 100kHz - XIicPs_SetSClk(inst, 100000); - } - int error = XIicPs_MasterSendPolled_ours(inst, data, length, device_addr); - if (device_addr == PX4FLOW_DEVICE_ADDR) { - // Put it back to 400kHz - XIicPs_SetSClk(inst, 400000); - } - usleep(5); - return error; -} - -int zybo_i2c_read(struct I2CDriver *self, - unsigned short device_addr, - unsigned char *buff, - unsigned int length) { - struct ZyboI2CState *state = self->state; - XIicPs *inst = state->inst; - if (device_addr == PX4FLOW_DEVICE_ADDR) { - // If we are sending a request to optical flow, drop down to 100kHz - XIicPs_SetSClk(inst, 100000); - } - int error = XIicPs_MasterRecvPolled_ours(inst, buff, length, device_addr); - if (device_addr == PX4FLOW_DEVICE_ADDR) { - // Put it back to 400kHz - XIicPs_SetSClk(inst, 400000); - } - usleep(5); - return error; -} - -/*****************************************************************************/ -/** -* NOTE to MicroCART: This function is originally from the Xilinx library, -* but we noticed that the original function didn't check for a NACK, which -* would cause the original polling function to enter an infinite loop in the -* event of a NACK. Notice that we have added that NACK check at the final -* while loop of this function. -* -* -* This function initiates a polled mode send in master mode. -*u16 i2cID -* It sends data to the FIFO and waits for the slave to pick them up. -* If slave fails to remove data from FIFO, the send fails with -* time out. -* -* @param InstancePtr is a pointer to the XIicPs instance. -* @param MsgPtr is the pointer to the send buffer. -* @param ByteCount is the number of bytes to be sent. -* @param SlaveAddr is the address of the slave we are sending to. -* -* @return -* - XST_SUCCESS if everything went well. -* - XST_FAILURE if timed out. -* -* @note This send routine is for polled mode transfer only. -* -****************************************************************************/ -int XIicPs_MasterSendPolled_ours(XIicPs *InstancePtr, u8 *MsgPtr, - int ByteCount, u16 SlaveAddr) -{ - u32 IntrStatusReg; - u32 StatusReg; - u32 BaseAddr; - u32 Intrs; - - /* - * Assert validates the input arguments. - */ - Xil_AssertNonvoid(InstancePtr != NULL); - Xil_AssertNonvoid(MsgPtr != NULL); - Xil_AssertNonvoid(InstancePtr->IsReady == XIL_COMPONENT_IS_READY); - Xil_AssertNonvoid(XIICPS_ADDR_MASK >= SlaveAddr); - - BaseAddr = InstancePtr->Config.BaseAddress; - InstancePtr->SendBufferPtr = MsgPtr; - InstancePtr->SendByteCount = ByteCount; - - XIicPs_SetupMaster(InstancePtr, SENDING_ROLE); - - XIicPs_WriteReg(BaseAddr, XIICPS_ADDR_OFFSET, SlaveAddr); - - /* - * Intrs keeps all the error-related interrupts. - */ - Intrs = XIICPS_IXR_ARB_LOST_MASK | XIICPS_IXR_TX_OVR_MASK | - XIICPS_IXR_TO_MASK | XIICPS_IXR_NACK_MASK; - - /* - * Clear the interrupt status register before use it to monitor. - */ - IntrStatusReg = XIicPs_ReadReg(BaseAddr, XIICPS_ISR_OFFSET); - XIicPs_WriteReg(BaseAddr, XIICPS_ISR_OFFSET, IntrStatusReg); - - /* - * Transmit first FIFO full of data. - */ - TransmitFifoFill(InstancePtr); - - IntrStatusReg = XIicPs_ReadReg(BaseAddr, XIICPS_ISR_OFFSET); - - /* - * Continue sending as long as there is more data and - * there are no errors. - */ - while ((InstancePtr->SendByteCount > 0) && - ((IntrStatusReg & Intrs) == 0)) { - StatusReg = XIicPs_ReadReg(BaseAddr, XIICPS_SR_OFFSET); - - /* - * Wait until transmit FIFO is empty. - */ - if ((StatusReg & XIICPS_SR_TXDV_MASK) != 0) { - IntrStatusReg = XIicPs_ReadReg(BaseAddr, - XIICPS_ISR_OFFSET); - continue; - } - - /* - * Send more data out through transmit FIFO. - */ - TransmitFifoFill(InstancePtr); - } - - /* - * Check for completion of transfer. - */ - // NOTE for MicroCART: Corrected function. Original left for reference. -// while ((XIicPs_ReadReg(BaseAddr, XIICPS_ISR_OFFSET) & -// XIICPS_IXR_COMP_MASK) != XIICPS_IXR_COMP_MASK); - while (!(IntrStatusReg & (Intrs | XIICPS_IXR_COMP_MASK))) { - IntrStatusReg = XIicPs_ReadReg(BaseAddr, XIICPS_ISR_OFFSET); - } - - /* - * If there is an error, tell the caller. - */ - if (IntrStatusReg & Intrs) { - return XST_FAILURE; - } - - return XST_SUCCESS; -} - -static XTime get_time() { - XTime time; - XTime_GetTime(&time); - u64 us = (u64)time * (1000000 / COUNTS_PER_SECOND); // (ticks)(1000000us/s)(s/ticks) - return us; -} - -/*****************************************************************************/ -/** -* This function initiates a polled mode receive in master mode. -* -* It repeatedly sets the transfer size register so the slave can -* send data to us. It polls the data register for data to come in. -* If slave fails to send us data, it fails with time out. -* -* @param InstancePtr is a pointer to the XIicPs instance. -* @param MsgPtr is the pointer to the receive buffer. -* @param ByteCount is the number of bytes to be received. -* @param SlaveAddr is the address of the slave we are receiving from. -* -* @return -* - XST_SUCCESS if everything went well. -* - XST_FAILURE if timed out. -* -* @note This receive routine is for polled mode transfer only. -* -****************************************************************************/ -int XIicPs_MasterRecvPolled_ours(XIicPs *InstancePtr, u8 *MsgPtr, - int ByteCount, u16 SlaveAddr) -{ - u32 IntrStatusReg; - u32 Intrs; - u32 StatusReg; - u32 BaseAddr; - int BytesToRecv; - int BytesToRead; - int TransSize; - int Tmp; - - /* - * Assert validates the input arguments. - */ - Xil_AssertNonvoid(InstancePtr != NULL); - Xil_AssertNonvoid(MsgPtr != NULL); - Xil_AssertNonvoid(InstancePtr->IsReady == XIL_COMPONENT_IS_READY); - Xil_AssertNonvoid(XIICPS_ADDR_MASK >= SlaveAddr); - - BaseAddr = InstancePtr->Config.BaseAddress; - InstancePtr->RecvBufferPtr = MsgPtr; - InstancePtr->RecvByteCount = ByteCount; - - XIicPs_SetupMaster(InstancePtr, RECVING_ROLE); - - XIicPs_WriteReg(BaseAddr, XIICPS_ADDR_OFFSET, SlaveAddr); - - /* - * Intrs keeps all the error-related interrupts. - */ - Intrs = XIICPS_IXR_ARB_LOST_MASK | XIICPS_IXR_RX_OVR_MASK | - XIICPS_IXR_RX_UNF_MASK | XIICPS_IXR_TO_MASK | - XIICPS_IXR_NACK_MASK; - - /* - * Clear the interrupt status register before use it to monitor. - */ - IntrStatusReg = XIicPs_ReadReg(BaseAddr, XIICPS_ISR_OFFSET); - XIicPs_WriteReg(BaseAddr, XIICPS_ISR_OFFSET, IntrStatusReg); - - /* - * Set up the transfer size register so the slave knows how much - * to send to us. - */ - if (ByteCount > XIICPS_FIFO_DEPTH) { - XIicPs_WriteReg(BaseAddr, XIICPS_TRANS_SIZE_OFFSET, - XIICPS_FIFO_DEPTH); - }else { - XIicPs_WriteReg(BaseAddr, XIICPS_TRANS_SIZE_OFFSET, - ByteCount); - } - -/* <--- MicroCART additions (iic watchdog timer hack) ---> */ - u32 iic_freq = XIicPs_GetSClk(InstancePtr); - // (1000000 * 9 / iic_freq) is the number of microseconds required to send 1 byte of data - // Using 5 times as an upper bound - u32 max_usec_per_byte = 5 * 1000000 * 9 / iic_freq; - u64 start_time = get_time(); -/* <--- End hack ---> */ - - /* - * Pull the interrupt status register to find the errors. - */ - IntrStatusReg = XIicPs_ReadReg(BaseAddr, XIICPS_ISR_OFFSET); - while ((InstancePtr->RecvByteCount > 0) && - ((IntrStatusReg & Intrs) == 0) && !(IntrStatusReg & XIICPS_IXR_COMP_MASK)) { -/* <--- MicroCART additions (iic watchdog timer hack) ---> */ - u64 usec_passed = get_time() - start_time; - // Add 1 so it has a chance to read - if (usec_passed > max_usec_per_byte * (1 + ByteCount - InstancePtr->RecvByteCount)) { - return IIC_RX_TIMEOUT_FAILURE; - } -/* <--- End hack ---> */ - StatusReg = XIicPs_ReadReg(BaseAddr, XIICPS_SR_OFFSET); - - /* - * If there is no data in the FIFO, check the interrupt - * status register for error, and continue. - */ - if ((StatusReg & XIICPS_SR_RXDV_MASK) == 0) { - IntrStatusReg = XIicPs_ReadReg(BaseAddr, - XIICPS_ISR_OFFSET); - continue; - } - - /* - * The transfer size register shows how much more data slave - * needs to send to us. - */ - TransSize = XIicPs_ReadReg(BaseAddr, - XIICPS_TRANS_SIZE_OFFSET); - - BytesToRead = InstancePtr->RecvByteCount; - - /* - * If expected number of bytes is greater than FIFO size, - * the master needs to wait for data comes in and set the - * transfer size register for slave to send more. - */ - if (InstancePtr->RecvByteCount > XIICPS_FIFO_DEPTH) { - /* wait slave to send data */ - while ((TransSize > 2) && - ((IntrStatusReg & Intrs) == 0)) { - TransSize = XIicPs_ReadReg(BaseAddr, - XIICPS_TRANS_SIZE_OFFSET); - IntrStatusReg = XIicPs_ReadReg(BaseAddr, - XIICPS_ISR_OFFSET); - } - - /* - * If timeout happened, it is an error. - */ - if (IntrStatusReg & XIICPS_IXR_TO_MASK) { - return XST_FAILURE; - } - TransSize = XIicPs_ReadReg(BaseAddr, - XIICPS_TRANS_SIZE_OFFSET); - - /* - * Take trans size into account of how many more should - * be received. - */ - BytesToRecv = InstancePtr->RecvByteCount - - XIICPS_FIFO_DEPTH + TransSize; - - /* Tell slave to send more to us */ - if (BytesToRecv > XIICPS_FIFO_DEPTH) { - XIicPs_WriteReg(BaseAddr, - XIICPS_TRANS_SIZE_OFFSET, - XIICPS_FIFO_DEPTH); - } else{ - XIicPs_WriteReg(BaseAddr, - XIICPS_TRANS_SIZE_OFFSET, BytesToRecv); - } - - BytesToRead = XIICPS_FIFO_DEPTH - TransSize; - } - - Tmp = 0; - IntrStatusReg = XIicPs_ReadReg(BaseAddr, XIICPS_ISR_OFFSET); - while ((Tmp < BytesToRead) && - ((IntrStatusReg & Intrs) == 0)) { - StatusReg = XIicPs_ReadReg(BaseAddr, - XIICPS_SR_OFFSET); - IntrStatusReg = XIicPs_ReadReg(BaseAddr, - XIICPS_ISR_OFFSET); - - if ((StatusReg & XIICPS_SR_RXDV_MASK) == 0) { - /* No data in fifo */ - continue; - } - XIicPs_RecvByte(InstancePtr); - Tmp ++; - } - } - - if ((IntrStatusReg & Intrs) || InstancePtr->RecvByteCount > 0) { - return XST_FAILURE; - } - - return XST_SUCCESS; -} - - -/*****************************************************************************/ -/* -* NOTE to MicroCART: This function is required by the send polling method above, -* but it was originally static, so we had to copy it word-for-word here. -* -* This function prepares a device to transfers as a master. -* -* @param InstancePtr is a pointer to the XIicPs instance. -* -* @param Role specifies whether the device is sending or receiving. -* -* @return -* - XST_SUCCESS if everything went well. -* - XST_FAILURE if bus is busy. -* -* @note Interrupts are always disabled, device which needs to use -* interrupts needs to setup interrupts after this call. -* -****************************************************************************/ -int XIicPs_SetupMaster(XIicPs *InstancePtr, int Role) -{ - u32 ControlReg; - u32 BaseAddr; - u32 EnabledIntr = 0x0; - - Xil_AssertNonvoid(InstancePtr != NULL); - - BaseAddr = InstancePtr->Config.BaseAddress; - ControlReg = XIicPs_ReadReg(BaseAddr, XIICPS_CR_OFFSET); - - - /* - * Only check if bus is busy when repeated start option is not set. - */ - if ((ControlReg & XIICPS_CR_HOLD_MASK) == 0) { - if (XIicPs_BusIsBusy(InstancePtr)) { - return XST_FAILURE; - } - } - - /* - * Set up master, AckEn, nea and also clear fifo. - */ - ControlReg |= XIICPS_CR_ACKEN_MASK | XIICPS_CR_CLR_FIFO_MASK | - XIICPS_CR_NEA_MASK | XIICPS_CR_MS_MASK; - - if (Role == RECVING_ROLE) { - ControlReg |= XIICPS_CR_RD_WR_MASK; - EnabledIntr = XIICPS_IXR_DATA_MASK |XIICPS_IXR_RX_OVR_MASK; - }else { - ControlReg &= ~XIICPS_CR_RD_WR_MASK; - } - EnabledIntr |= XIICPS_IXR_COMP_MASK | XIICPS_IXR_ARB_LOST_MASK; - - XIicPs_WriteReg(BaseAddr, XIICPS_CR_OFFSET, ControlReg); - - XIicPs_DisableAllInterrupts(BaseAddr); - - return XST_SUCCESS; -} diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_imu.c b/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_imu.c deleted file mode 100644 index 31b68f49d..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_imu.c +++ /dev/null @@ -1,265 +0,0 @@ -#include "hw_iface.h" -#include "hw_impl_zybo.h" -#include "type_def.h" - -#include <string.h> - -#define MPU9150_DEVICE_ADDR 0b01101000 -#define MPU9150_COMPASS_ADDR 0x0C - -#define ACCEL_GYRO_READ_SIZE 14 //Bytes -#define ACCEL_GYRO_BASE_ADDR 0x3B //Starting register address - -#define MAG_READ_SIZE 6 -#define MAG_BASE_ADDR 0x03 - -#define MAG_DRDY_TIMEOUT (10) - -#define RAD_TO_DEG 57.29578 -#define DEG_TO_RAD 0.0174533 - -// Array indicies when reading from ACCEL_GYRO_BASE_ADDR -#define ACC_X_H 0 -#define ACC_X_L 1 -#define ACC_Y_H 2 -#define ACC_Y_L 3 -#define ACC_Z_H 4 -#define ACC_Z_L 5 - -#define GYR_X_H 8 -#define GYR_X_L 9 -#define GYR_Y_H 10 -#define GYR_Y_L 11 -#define GYR_Z_H 12 -#define GYR_Z_L 13 - -#define MAG_X_L 0 -#define MAG_X_H 1 -#define MAG_Y_L 2 -#define MAG_Y_H 3 -#define MAG_Z_L 4 -#define MAG_Z_H 5 - -// Gyro is configured for +/-2000dps -// Sensitivity gain is based off MPU9150 datasheet (pg. 11) -#define GYRO_SENS 16.4 - -#define GYRO_X_BIAS 0.005f -#define GYRO_Y_BIAS -0.014f -#define GYRO_Z_BIAS 0.0534//0.0541f - -#define ACCEL_X_BIAS 0.023f -#define ACCEL_Y_BIAS 0.009f -#define ACCEL_Z_BIAS 0.0686f - -int mpu9150_write(struct I2CDriver *i2c, u8 register_addr, u8 data); -int mpu9150_read(struct I2CDriver *i2c, u8* recv_buffer, u8 register_addr, int size); - -int mpu9150_calc_mag_sensitivity(struct IMUDriver *self, gam_t *gam); -int mpu9150_read_mag(struct IMUDriver *self, gam_t* gam); -int mpu9150_read_gyro_accel(gam_t* gam); - -int zybo_imu_reset(struct IMUDriver *self, gam_t *gam) { - memset(gam, 0, sizeof(gam_t)); - - struct I2CDriver *i2c = self->i2c; - - // Device Reset & Wake up - mpu9150_write(i2c, 0x6B, 0x80); - usleep(5000); - - // Set clock reference to Z Gyro - mpu9150_write(i2c, 0x6B, 0x03); - // Configure Digital Low/High Pass filter - mpu9150_write(i2c, 0x1A,0x03); // Level 3 low pass on gyroscope - - // Configure Gyro to 2000dps, Accel. to +/-8G - mpu9150_write(i2c, 0x1B, 0x18); - mpu9150_write(i2c, 0x1C, 0x10); - - // Enable I2C bypass for AUX I2C (Magnetometer) - mpu9150_write(i2c, 0x37, 0x02); - - usleep(100000); - - //Calculate magnetometer sensitivities - mpu9150_calc_mag_sensitivity(self, gam); - - usleep(10000); - - //Enable single measurement mode - mpu9150_write(i2c, 0x0A, 0x00); - mpu9150_write(i2c, 0x0A, 0x01); - - int i; - - // Do about 20 reads to warm up the device - for(i=0; i < 20; ++i){ - self->read(self, gam); - usleep(1000); - } - - return 0; -} - -int mpu9150_calc_mag_sensitivity(struct IMUDriver *self, gam_t *gam) { - u8 buf[3]; - u8 ASAX, ASAY, ASAZ; - - // Quickly read from the factory ROM to get correction coefficents - int status = mpu9150_write(self->i2c, 0x0A, 0x0F); - if(status != 0) { - return status; - } - - usleep(10000); - - // Read raw adjustment values - status = mpu9150_read(self->i2c, buf, 0x10,3); - if(status != 0) { - return status; - } - ASAX = buf[0]; - ASAY = buf[1]; - ASAZ = buf[2]; - - // Set the correction coefficients - gam->magX_correction = (ASAX-128)*0.5/128 + 1; - gam->magY_correction = (ASAY-128)*0.5/128 + 1; - gam->magZ_correction = (ASAZ-128)*0.5/128 + 1; - - return 0; -} - -int zybo_imu_read(struct IMUDriver *self, gam_t *gam) { - struct I2CDriver *i2c = self->i2c; - i16 raw_accel_x, raw_accel_y, raw_accel_z; - i16 gyro_x, gyro_y, gyro_z; - - u8 sensor_data[ACCEL_GYRO_READ_SIZE] = {}; - - int error = mpu9150_read(i2c, sensor_data, ACCEL_GYRO_BASE_ADDR, ACCEL_GYRO_READ_SIZE); - if (error) return error; - - //Calculate accelerometer data - raw_accel_x = sensor_data[ACC_X_H] << 8 | sensor_data[ACC_X_L]; - raw_accel_y = sensor_data[ACC_Y_H] << 8 | sensor_data[ACC_Y_L]; - raw_accel_z = sensor_data[ACC_Z_H] << 8 | sensor_data[ACC_Z_L]; - - // put in G's - gam->accel_x = (raw_accel_x / 4096.0) + ACCEL_X_BIAS; // 4,096 is the gain per LSB of the measurement reading based on a configuration range of +-8g - gam->accel_y = (raw_accel_y / 4096.0) + ACCEL_Y_BIAS; - gam->accel_z = (raw_accel_z / 4096.0) + ACCEL_Z_BIAS; - - //Convert gyro data to rate (we're only using the most 12 significant bits) - gyro_x = (sensor_data[GYR_X_H] << 8) | (sensor_data[GYR_X_L]); //* G_GAIN; - gyro_y = (sensor_data[GYR_Y_H] << 8 | sensor_data[GYR_Y_L]);// * G_GAIN; - gyro_z = (sensor_data[GYR_Z_H] << 8 | sensor_data[GYR_Z_L]);// * G_GAIN; - - //Get the number of degrees - //javey: converted to radians to following SI units - gam->gyro_xVel_p = ((gyro_x / GYRO_SENS) * DEG_TO_RAD) + GYRO_X_BIAS; - gam->gyro_yVel_q = ((gyro_y / GYRO_SENS) * DEG_TO_RAD) + GYRO_Y_BIAS; - gam->gyro_zVel_r = ((gyro_z / GYRO_SENS) * DEG_TO_RAD) + GYRO_Z_BIAS; - - // Magnometer - mpu9150_read_mag(self, gam); - - return error; -} - -////////////////////// -// Helper functions -///////////////////// - -int mpu9150_write(struct I2CDriver *i2c, u8 register_addr, u8 data){ - - u16 device_addr = MPU9150_DEVICE_ADDR; - u8 buf[] = {register_addr, data}; - - // Check if within register range - if(register_addr < 0 || register_addr > 0x75){ - return -1; - } - - if(register_addr <= 0x12){ - device_addr = MPU9150_COMPASS_ADDR; - } - - return i2c->write(i2c, device_addr, buf, 2); -} - -int mpu9150_read(struct I2CDriver *i2c, u8* recv_buffer, u8 register_addr, int size){ - - u16 device_addr = MPU9150_DEVICE_ADDR; - u8 buf[] = {register_addr}; - - // Check if within register range - if(register_addr < 0 || register_addr > 0x75){ - } - - // Set device address to the if 0x00 <= register address <= 0x12 - if(register_addr <= 0x12){ - device_addr = MPU9150_COMPASS_ADDR; - } - - - int error = i2c->write(i2c, device_addr, buf, 1); - if (error) return error; - return i2c->read(i2c, device_addr, recv_buffer, size); -} - - -int mpu9150_read_mag(struct IMUDriver *self, gam_t* gam){ - u8 mag_data[6]; - u8 mag_status; - i16 raw_magX, raw_magY, raw_magZ; - - int trigger = 0; - - int status = mpu9150_read(self->i2c, mag_data, 0x02, 1); - if(status != 0) { - return status; - } - - if(mag_data[0] & 0x01) { - // Get mag data - status = mpu9150_read(self->i2c, mag_data, 0x03, 6); - if(status != 0) { - return status; - } - - status = mpu9150_read(self->i2c, &mag_status, 0x09, 1); - if(status != 0) { - return status; - } - - raw_magX = (mag_data[1] << 8) | mag_data[0]; - raw_magY = (mag_data[3] << 8) | mag_data[2]; - raw_magZ = (mag_data[5] << 8) | mag_data[4]; - - // Set magnetometer data to output - gam->mag_x = raw_magX * gam->magX_correction; - gam->mag_y = raw_magY * gam->magY_correction; - gam->mag_z = raw_magZ * gam->magZ_correction; - - trigger = 1; - } - else { - gam->magDRDYCount++; - - if(gam->magDRDYCount > MAG_DRDY_TIMEOUT) { - gam->magDRDYCount = 0; - - trigger = 1; - } - } - - if(trigger) { - //Start next reading - mpu9150_write(self->i2c, 0x0A, 0x00); - mpu9150_write(self->i2c, 0x0A, 0x01); - } - - return 0; -} diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_lidar.c b/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_lidar.c deleted file mode 100644 index 32d0fad0c..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_lidar.c +++ /dev/null @@ -1,68 +0,0 @@ -#include "hw_iface.h" -#include "hw_impl_zybo.h" -#include "type_def.h" -#include <string.h> - -#define LIDARLITE_DEVICE_ADDR 0x62 -#define LIDAR_OFFSET (0.016666) // Distance from LiDAR sensor to ground, in meters - -int lidarlite_write(struct I2CDriver *i2c, u8 register_addr, u8 data); -int lidarlite_read(struct I2CDriver *i2c, u8* recv_buffer, u8 register_addr, int size); - -int zybo_lidar_reset(struct LidarDriver *self, lidar_t *lidar) { - // initialize lidar - memset(lidar, 0, sizeof(lidar_t)); - - struct I2CDriver *i2c = self->i2c; - - int error = 0; - - // Device Reset & Wake up with default settings - error = lidarlite_write(i2c, 0x00, 0x00); - if (error) return error; - usleep(15000); - - // Enable Free Running Mode and distance measurements with correction - error = lidarlite_write(i2c, 0x11, 0xff); - if (error) return error; - error = lidarlite_write(i2c, 0x00, 0x04); - return error; -} - -int zybo_lidar_read(struct LidarDriver *self, lidar_t *lidar) { - struct I2CDriver *i2c = self->i2c; - u8 buf[2]; - int error = 0; - - // Read the sensor value - error = lidarlite_read(i2c, buf, 0x8f, 2); - if (error) return error; - float distance_cm = (float)(buf[0] << 8 | buf[1]); - lidar->distance_m = (distance_cm * 0.01) + LIDAR_OFFSET; - - return error; -} - -//////////////////// -// Helper functions -//////////////////// - -int lidarlite_write(struct I2CDriver *i2c, u8 register_addr, u8 data) { - u8 buf[] = {register_addr, data}; - return i2c->write(i2c, LIDARLITE_DEVICE_ADDR, buf, 2); -} - -int lidarlite_read(struct I2CDriver *i2c, u8* recv_buffer, u8 register_addr, int size) { - u8 buf[] = {register_addr}; - int error = 0; - - error = i2c->write(i2c, LIDARLITE_DEVICE_ADDR, buf, 1); - if (error) return error; - error = i2c->read(i2c, LIDARLITE_DEVICE_ADDR, recv_buffer, size); - return error; -} - -// Maybe this will be useful? -int lidarlite_sleep(struct I2CDriver *i2c) { - return lidarlite_write(i2c, 0x65, 0x84); -} diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_mio7_led.c b/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_mio7_led.c deleted file mode 100644 index 03a192671..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_mio7_led.c +++ /dev/null @@ -1,22 +0,0 @@ -#include "hw_impl_zybo.h" - -int zybo_mio7_led_reset(struct LEDDriver *self) { - if (self->state == NULL) { - self->state = malloc(sizeof(XGpioPs)); - } - - XGpioPs_Config *ConfigPtr = XGpioPs_LookupConfig(XPAR_PS7_GPIO_0_DEVICE_ID); - XGpioPs_CfgInitialize(self->state, ConfigPtr, ConfigPtr->BaseAddr); - XGpioPs_SetDirectionPin(self->state, 7, 1); - return 0; -} - -int zybo_mio7_led_turn_on(struct LEDDriver *self) { - XGpioPs_WritePin(self->state, 7, 0x01); - return 0; -} - -int zybo_mio7_led_turn_off(struct LEDDriver *self) { - XGpioPs_WritePin(self->state, 7, 0x00); - return 0; -} diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_motor.c b/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_motor.c deleted file mode 100644 index 8e8e27ab7..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_motor.c +++ /dev/null @@ -1,55 +0,0 @@ -#include "hw_impl_zybo.h" - -#define SYS_CLOCK_RATE 100000000 // ticks per second -#define FREQUENCY 450 -#define PERIOD_WIDTH SYS_CLOCK_RATE/FREQUENCY -#define PULSE_WIDTH_LOW SYS_CLOCK_RATE/1000 // 1 ms -#define PULSE_WIDTH_HIGH SYS_CLOCK_RATE/500 // 2 ms -#define PULSE_WIDTH_ADDR_OFFSET 1 - -struct MotorDriverState { - int *outputs[4]; -}; - -int zybo_motor_reset(struct MotorDriver *self) { - if (self->state == NULL) { - self->state = malloc(sizeof(struct MotorDriverState)); - if (self->state == NULL) { - return -1; - } - } - struct MotorDriverState *state = self->state; - - state->outputs[0] = (int *) XPAR_PWM_SIGNAL_OUT_0_S_AXI_BASEADDR; - state->outputs[1] = (int *) XPAR_PWM_SIGNAL_OUT_1_S_AXI_BASEADDR; - state->outputs[2] = (int *) XPAR_PWM_SIGNAL_OUT_2_S_AXI_BASEADDR; - state->outputs[3] = (int *) XPAR_PWM_SIGNAL_OUT_3_S_AXI_BASEADDR; - - // Set period width of PWM pulse - *(state->outputs[0]) = PERIOD_WIDTH; - *(state->outputs[1]) = PERIOD_WIDTH; - *(state->outputs[2]) = PERIOD_WIDTH; - *(state->outputs[3]) = PERIOD_WIDTH; - - // Set a low pulse (1 ms) so that outputs are off - *(state->outputs[0] + PULSE_WIDTH_ADDR_OFFSET) = PULSE_WIDTH_LOW; - *(state->outputs[1] + PULSE_WIDTH_ADDR_OFFSET) = PULSE_WIDTH_LOW; - *(state->outputs[2] + PULSE_WIDTH_ADDR_OFFSET) = PULSE_WIDTH_LOW; - *(state->outputs[3] + PULSE_WIDTH_ADDR_OFFSET) = PULSE_WIDTH_LOW; - - usleep(1000000); - return 0; -} - -int zybo_motor_write(struct MotorDriver *self, - unsigned int channel, - float magnitude) { - if (magnitude > 1) - magnitude = 1; - if (magnitude < 0) - magnitude = 0; - struct MotorDriverState *state = self->state; - unsigned long pulse_width_ticks = (unsigned long) (magnitude * (float) (PULSE_WIDTH_HIGH - PULSE_WIDTH_LOW)) + PULSE_WIDTH_LOW; - *(state->outputs[channel] + PULSE_WIDTH_ADDR_OFFSET) = pulse_width_ticks; - return 0; -} diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_optical_flow.c b/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_optical_flow.c deleted file mode 100644 index c45ca68a9..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_optical_flow.c +++ /dev/null @@ -1,74 +0,0 @@ -#include "hw_iface.h" -#include "hw_impl_zybo.h" -#include <stdint.h> -#include <string.h> -#include "type_def.h" - -int px4flow_write(struct I2CDriver *i2c, u8 register_addr, u8 data); -int px4flow_read(struct I2CDriver *i2c, u8* recv_buffer, u8 register_addr, int size); - -int zybo_optical_flow_reset(struct OpticalFlowDriver *self, px4flow_t *of) { - memset(of, 0, sizeof(px4flow_t)); - - return 0; -} - -int zybo_optical_flow_read(struct OpticalFlowDriver *self, px4flow_t *of) { - struct I2CDriver *i2c = self->i2c; - int error = 0; - - // Note: Despite documentation, do not mark this as a "packed" struct. The actual code does not pack it. - struct i2c_integral_frame - { - uint16_t frame_count_since_last_readout;//number of flow measurements since last I2C readout [#frames] - int16_t pixel_flow_x_integral;//accumulated flow in radians*10000 around x axis since last I2C readout [rad*10000] - int16_t pixel_flow_y_integral;//accumulated flow in radians*10000 around y axis since last I2C readout [rad*10000] - int16_t gyro_x_rate_integral;//accumulated gyro x rates in radians*10000 since last I2C readout [rad*10000] - int16_t gyro_y_rate_integral;//accumulated gyro y rates in radians*10000 since last I2C readout [rad*10000] - int16_t gyro_z_rate_integral;//accumulated gyro z rates in radians*10000 since last I2C readout [rad*10000] - uint32_t integration_timespan;//accumulation timespan in microseconds since last I2C readout [microseconds] - uint32_t sonar_timestamp;// time since last sonar update [microseconds] - int16_t ground_distance;// Ground distance in meters*1000 [meters*1000] - int16_t gyro_temperature;// Temperature * 100 in centi-degrees Celsius [degcelsius*100] - uint8_t quality;// averaged quality of accumulated flow values [0:bad quality;255: max quality] - } i2c_integral_frame; - - u8 buf[sizeof(i2c_integral_frame)]; - - // Read the sensor value - error = px4flow_read(i2c, buf, 0x16, 26); - - if(error == 0) { - //Copy into struct - memcpy(&i2c_integral_frame, buf, sizeof(i2c_integral_frame)); - - of->flow_x_rad = 0.0001 * i2c_integral_frame.pixel_flow_x_integral; - of->flow_y_rad = 0.0001 * i2c_integral_frame.pixel_flow_y_integral; - of->quality = i2c_integral_frame.quality; - of->dt = (double)i2c_integral_frame.integration_timespan / 1000000; - } - return error; -} - -///////////////////// -// Helper functions -///////////////////// - -int px4flow_write(struct I2CDriver *i2c, u8 register_addr, u8 data) { - u8 buf[] = {register_addr, data}; - - return i2c->write(i2c, PX4FLOW_DEVICE_ADDR, buf, 2); -} - -int px4flow_read(struct I2CDriver *i2c, u8* recv_buffer, u8 register_addr, int size) { - u8 buf[] = {register_addr}; - int error = 0; - - error = i2c->write(i2c, PX4FLOW_DEVICE_ADDR, buf, 1); - if (error) { - return error; - } - error = i2c->read(i2c, PX4FLOW_DEVICE_ADDR, recv_buffer, size); - return error; -} - diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_rc_receiver.c b/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_rc_receiver.c deleted file mode 100644 index 391333b0a..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_rc_receiver.c +++ /dev/null @@ -1,40 +0,0 @@ -#include "hw_impl_zybo.h" - -#define SYS_CLOCK_RATE 100000000 // ticks per second -#define FREQUENCY 450 -#define PERIOD_WIDTH SYS_CLOCK_RATE/FREQUENCY -#define PULSE_WIDTH_LOW SYS_CLOCK_RATE/1000 // 1 ms -#define PULSE_WIDTH_HIGH SYS_CLOCK_RATE/500 // 2 ms -#define PULSE_WIDTH_ADDR_OFFSET 1 - -struct RCReceiverDriverState { - int *channels[6]; -}; - -int zybo_rc_receiver_reset(struct RCReceiverDriver *self) { - if (self->state == NULL) { - self->state = malloc(sizeof(struct RCReceiverDriverState)); - if (self->state == NULL) { - return -1; - } - } - - // Save the addresses of the input PWM recorders - struct RCReceiverDriverState *state = self->state; - state->channels[0] = (int *) XPAR_PWM_RECORDER_0_S_AXI_BASEADDR; - state->channels[1] = (int *) XPAR_PWM_RECORDER_1_S_AXI_BASEADDR; - state->channels[2] = (int *) XPAR_PWM_RECORDER_2_S_AXI_BASEADDR; - state->channels[3] = (int *) XPAR_PWM_RECORDER_3_S_AXI_BASEADDR; - state->channels[4] = (int *) XPAR_PWM_RECORDER_4_S_AXI_BASEADDR; - state->channels[5] = (int *) XPAR_PWM_RECORDER_5_S_AXI_BASEADDR; - return 0; -} - -int zybo_rc_receiver_read(struct RCReceiverDriver *self, - unsigned int channel, - float *magnitude) { - struct RCReceiverDriverState *state = self->state; - unsigned long pulse_width_ticks = (long) *((int *) state->channels[channel]); - *magnitude = (float) (pulse_width_ticks - PULSE_WIDTH_LOW) / (float) (PULSE_WIDTH_HIGH - PULSE_WIDTH_LOW); - return 0; -} diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_system.c b/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_system.c deleted file mode 100644 index 2adcc4007..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_system.c +++ /dev/null @@ -1,11 +0,0 @@ -#include "hw_impl_zybo.h" - -int zybo_system_reset(struct SystemDriver *sys) { - return 0; -} - -int zybo_system_sleep(struct SystemDriver *sys, unsigned long us) { - usleep(us); - return 0; -} - diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_tests.c b/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_tests.c deleted file mode 100644 index 732c6256a..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_tests.c +++ /dev/null @@ -1,321 +0,0 @@ -#include "hw_impl_zybo.h" -#include "type_def.h" -#include <stdio.h> - -/** - * Test for the LEDDriver and SystemDriver. - * - * This is essentially a basic "blink" program, using the mio7 LED - * on the Zybo board. - * - * Instructions: - * 1) Connect Zybo board to computer by USB cable. - * 2) Set the RUN_TESTS macro in main.c - * 3) Uncomment only this test in main.c - * 4) Run main.c - * 5) Observe MIO7 LED on board blinking at 1 second intervals. - */ -int test_zybo_mio7_led_and_system() { - struct LEDDriver mio7 = create_zybo_mio7_led(); - struct SystemDriver sys = create_zybo_system(); - mio7.reset(&mio7); - sys.reset(&sys); - - while (1) { - mio7.turn_on(&mio7); - sys.sleep(&sys, 1000000); - mio7.turn_off(&mio7); - sys.sleep(&sys, 1000000); - } - - return 0; -} - -/** - * Tests for the I2CDriver (one for each I2C device we use) - * - * Instructions: - * 1) Connect Zybo Board to computer by USB cable. - * 2) Prepare a breadboard to accomplish the following connections: - * - Zybo GND <-> LIDAR GND - * - Zybo WALL <-> LIDAR VCC - * - Zybo VV5V0 <-> LIDAR VCC - * - Zybo SDA/SCL <-> LIDAR SDA/SCL - * - The Zybo I2C SCL and SDA pins are on pins 1 and 2 of PORT JF, respectively - * 3) Place breakpoint in this test function, somewhere in the while loop. - * 4) Set the RUN_TESTS macro in main.c - * 5) Uncomment only this test in main.c - * 6) Debug main.c - * 7) Step through the while loop, observing x change as you physically change the - * distance of the LIDAR sensor. - */ -int test_zybo_i2c() { - struct I2CDriver i2c = create_zybo_i2c(0); - struct LidarDriver ld = create_zybo_lidar(&i2c); - i2c.reset(&i2c); - - lidar_t lidar = { }; - if (ld.reset(&ld, &lidar)) return 0; - while (1) { - ld.read(&ld, &lidar); - } - return 0; -} - -int test_zybo_i2c_imu() { - struct I2CDriver i2c = create_zybo_i2c(0); - struct IMUDriver imu = create_zybo_imu(&i2c); - - gam_t gam; - if (i2c.reset(&i2c)) return 0; - if (imu.reset(&imu, &gam)) return 0; - - int status = 0; - while (!status) { - status = imu.read(&imu, &gam); - } - return 0; -} - -int test_zybo_i2c_px4flow() { - struct I2CDriver i2c = create_zybo_i2c(0); - struct OpticalFlowDriver ofd = create_zybo_optical_flow(&i2c); - i2c.reset(&i2c); - px4flow_t of; - - if (ofd.reset(&ofd, &of)) return 0; - - int status = 0; - while(!status) { - usleep(5000); - status = ofd.read(&ofd, &of); - } - - return 0; -} - -int test_zybo_i2c_lidar() { - struct I2CDriver i2c = create_zybo_i2c(1); - struct LidarDriver lidarDriver = create_zybo_lidar(&i2c); - i2c.reset(&i2c); - lidar_t lidar; - - if (lidarDriver.reset(&lidarDriver, &lidar)) - return 0; - - int status = 0; - while(!status) { - usleep(5000); - status = lidarDriver.read(&lidarDriver, &lidar); - } - - return 0; -} - -int test_zybo_i2c_all() { - struct I2CDriver i2c_0 = create_zybo_i2c(0); - struct IMUDriver imu = create_zybo_imu(&i2c_0); - struct I2CDriver i2c_1 = create_zybo_i2c(1); - struct LidarDriver ld = create_zybo_lidar(&i2c_1); - struct OpticalFlowDriver ofd = create_zybo_optical_flow(&i2c_0); - i2c_0.reset(&i2c_0); - i2c_1.reset(&i2c_1); - - lidar_t lidar; - px4flow_t of; - gam_t gam; - - if (ld.reset(&ld, &lidar)) return 0; - if (imu.reset(&imu, &gam)) return 0; - if (ofd.reset(&ofd, &of)) return 0; - - - int lidarErrors = 0; - int gamErrors = 0; - int nLoops = 0; - int of_errors = 0; - - for(;;) { - ld.read(&ld, &lidar); - imu.read(&imu, &gam); - ofd.read(&ofd, &of); - - if (lidar.distance_m > 50) { - lidarErrors += 1; - } - if (gam.accel_z > -0.8) { - gamErrors += 1; - } - nLoops += 1; - } - return 0; -} - -/** - * Test for the PWMInputDriver. - * - * Instructions: - * 1) Connect the quad Zybo board to computer using USB. - * 2) Move jumper on Zybo board to use JTAG instead of SD. - * 3) Turn on Zybo board and turn on Spektrum handheld controller. - * - Verify receiver on quad pairs with controller (orange LED should turn on) - * 3) Place breakpoint somewhere in the while loop of this function. - * 4) Set the RUN_TESTS macro in main.c - * 5) Uncomment only this test in main.c - * 6) Debug main. - * 7) Observe the values of pwm_inputs in debugger changing as you use the - * Spektrum RC controller. - */ -int test_zybo_rc_receiver() { - struct RCReceiverDriver rc_receiver = create_zybo_rc_receiver(); - rc_receiver.reset(&rc_receiver); - - float pwms[6]; - while (1) { - int i; - for (i = 0; i < 6; i += 1) { - rc_receiver.read(&rc_receiver, i, &pwms[i]); - } - continue; - } -} - -/** - * Test for the PWMOutputDriver. - * - * Instructions: - * 1) Connect the quad Zybo board to computer using USB. - * 2) Move jumper on Zybo board to use JTAG instead of SD. - * 3) Get an oscilloscope and observe PMOD outputs JE7-JE10 - * 4) Set the RUN_TESTS macro in main.c - * 5) Uncomment only this test in main.c - * 6) Run main. - * 7) Observe the PWM width of those PMOD pins changing with time - */ -int test_zybo_motors() { - struct MotorDriver motors = create_zybo_motors(); - motors.reset(&motors); - - double j = 0; - while (1) { - for (j = 0; j < 1.0; j += 0.01) { - int i = 0; - for (i = 0; i < 4; i += 1) { - motors.write(&motors, i, j); - usleep(50000); - } - } - } - return 0; -} - -/** - * Test for the AXI timer, using LEDDriver. - * - * This is essentially a basic "blink" program, using the mio7 LED - * on the Zybo board. - * - * Instructions: - * 1) Connect Zybo board to computer by USB cable. - * 2) Set the RUN_TESTS macro in main.c - * 3) Uncomment only this test in main.c - * 4) Run main.c - * 5) Observe MIO7 LED on board blinking at 1 second intervals. - */ -//int test_zybo_axi_timer() { -// struct TimerDriver axi = create_zybo_axi_timer(); -// struct LEDDriver led = create_zybo_mio7_led(); -// axi.reset(&axi); -// led.reset(&led); -// -// unsigned long time; -// -// while (1) { -// axi.restart(&axi); -// time = 0; -// while (time < 1000000) { -// axi.read(&axi, &time); -// } -// led.turn_off(&led); -// while (time < 2000000) { -// axi.read(&axi, &time); -// } -// led.turn_on(&led); -// } -//} - -/** - * Test for the Global timer, using LEDDriver. - * - * This is essentially a basic "blink" program, using the mio7 LED - * on the Zybo board. - * - * Instructions: - * 1) Connect Zybo board to computer by USB cable. - * 2) Set the RUN_TESTS macro in main.c - * 3) Uncomment only this test in main.c - * 4) Run main.c - * 5) Observe MIO7 LED on board blinking at 1 second intervals. - */ -int test_zybo_global_timer() { - struct TimerDriver global = create_zybo_global_timer(); - struct LEDDriver led = create_zybo_mio7_led(); - global.reset(&global); - led.reset(&led); - - unsigned long time; - - while (1) { - global.restart(&global); - time = 0; - while (time < 1000000) { - global.read(&global, &time); - } - led.turn_off(&led); - while (time < 2000000) { - global.read(&global, &time); - } - led.turn_on(&led); - } -} - -/** - * Communication tests using the UARTDriver. - * - * Instructions: - * 1) Connect Zybo board to computer by USB cable. - * 2) Get a FTDI Basic Sparkfun board in order to connect the UART pins - * on the Zybo to the computer by USB. - * - Zybo PMOD JC2 (TX) <-> Sparkfun Board RX - * - Zybo PMOD JC3 (RX) <-> sparkfun Board Tx - * - Zybo PMOD JC5 (GND) <-> Sparkfun Board GDN - * 2) Set the RUN_TESTS macro in main.c - * 3) Uncomment only this test in main.c - * 4) Run main.c - * 5) Execute quad/scripts/tests/test_zybo_uart.py - * - Observe test results on terminal - * - You might be able to see LED MIO7 blink when it receives bytes - */ -int test_zybo_uart_comm() { - struct UARTDriver uart = create_zybo_uart(0); - struct CommDriver comm = create_zybo_comm(&uart); - struct LEDDriver led = create_zybo_mio7_led(); - uart.reset(&uart); - led.reset(&led); - - unsigned char c; - while (1) { - if (comm.uart->read(comm.uart, &c)) { - // read failed - led.turn_off(&led); - } else { - // read successful - led.turn_on(&led); - uart.write(&uart, c); - } - } - - return 0; -} - - diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_uart.c b/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_uart.c deleted file mode 100644 index 9d3ff7050..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/src/hw_impl_zybo_uart.c +++ /dev/null @@ -1,282 +0,0 @@ -#include "hw_impl_zybo.h" - -#define BAUD_RATE 921600 - - -int XUartPs_SetBaudRate_ours(XUartPs *InstancePtr, u32 BaudRate); -int SetupInterruptSystem(struct ZyboUARTState *state, u16 UartIntrId, Xil_ExceptionHandler handler); -void uart_interrupt_handler(struct ZyboUARTState *state); - -int zybo_uart_reset(struct UARTDriver *self) { - // Ensure all required memory is allocated - struct ZyboUARTState *state = self->state; - if (state == NULL) return -1; - if (state->inst == NULL) return -1; - if (state->queue == NULL) return -1; - - XUartPs *inst = state->inst; - - // Configure XUartPs instance - XUartPs_Config* config = XUartPs_LookupConfig(XPAR_PS7_UART_0_DEVICE_ID); - if (XUartPs_CfgInitialize(inst, config, config->BaseAddress) != XST_SUCCESS) { - return -1; - } - - // Set UART Baudrate - if(XUartPs_SetBaudRate_ours(inst, BAUD_RATE) != XST_SUCCESS) { - return -1; - } - - // Clear Tx/Rx FIFOs - int* uart_ctrl_reg = (int*) inst->Config.BaseAddress; - *uart_ctrl_reg |= 0x00000003; // clear TX & RX - - // Setup Interrupts - if (SetupInterruptSystem(state, XPAR_PS7_UART_0_INTR, (Xil_ExceptionHandler) uart_interrupt_handler) != XST_SUCCESS) { - return -1; - } - - // Interrupts selected: Rx FIFO threashold reached, RX overflow, timeout - u32 IntrMask = XUARTPS_IXR_RXFULL | XUARTPS_IXR_RXOVR | XUARTPS_IXR_TOUT; - XUartPs_SetInterruptMask(inst, IntrMask); - - /* - * Set the receiver timeout. If it is not set, and the last few bytes - * of data do not trigger the over-water or full interrupt, the bytes - * will not be received. By default it is disabled. - * Timeout duration = RecvTimeout x 4 x Bit Period. 0 disables the - * timeout function. - * - * The setting of 8 will timeout after 8 x 4 = 32 character times. - * Increase the time out value if baud rate is high, decrease it if - * baud rate is low. - */ - XUartPs_SetRecvTimeout(inst, 8); - - // Second argument is the number of bytes to trigger an interrupt at - XUartPs_SetFifoThreshold(inst, 48); - - return 0; -} - -int zybo_uart_write(struct UARTDriver *self, unsigned char c) { - struct ZyboUARTState *state = self->state; - XUartPs *inst = state->inst; - XUartPs_SendByte(inst->Config.BaseAddress, c); - return 0; -} - -int zybo_uart_read(struct UARTDriver *self, unsigned char *c) { - struct ZyboUARTState *state = self->state; - struct Queue *queue = state->queue; - if (queue_remove(queue, c)) return -1; - else return 0; -} - -//This is copied from xuart driver -/***************************************************/ - -#define XUARTPS_MAX_BAUD_ERROR_RATE 3 /* max % error allowed */ -int XUartPs_SetBaudRate_ours(XUartPs *InstancePtr, u32 BaudRate) -{ - u8 IterBAUDDIV; /* Iterator for available baud divisor values */ - u32 BRGR_Value; /* Calculated value for baud rate generator */ - u32 CalcBaudRate; /* Calculated baud rate */ - u32 BaudError; /* Diff between calculated and requested baud rate */ - u32 Best_BRGR = 0; /* Best value for baud rate generator */ - u8 Best_BAUDDIV = 0; /* Best value for baud divisor */ - u32 Best_Error = 0xFFFFFFFF; - u32 PercentError; - u32 ModeReg; - u32 InputClk; - - /* - * Asserts validate the input arguments - */ - Xil_AssertNonvoid(InstancePtr != NULL); - Xil_AssertNonvoid(InstancePtr->IsReady == XIL_COMPONENT_IS_READY); - //Xil_AssertNonvoid(BaudRate <= XUARTPS_MAX_RATE); - Xil_AssertNonvoid(BaudRate >= XUARTPS_MIN_RATE); - - /* - * Make sure the baud rate is not impossilby large. - * Fastest possible baud rate is Input Clock / 2. - */ - if ((BaudRate * 2) > InstancePtr->Config.InputClockHz) { - return XST_UART_BAUD_ERROR; - } - /* - * Check whether the input clock is divided by 8 - */ - ModeReg = XUartPs_ReadReg( InstancePtr->Config.BaseAddress, - XUARTPS_MR_OFFSET); - - InputClk = InstancePtr->Config.InputClockHz; - if(ModeReg & XUARTPS_MR_CLKSEL) { - InputClk = InstancePtr->Config.InputClockHz / 8; - } - - /* - * Determine the Baud divider. It can be 4to 254. - * Loop through all possible combinations - */ - for (IterBAUDDIV = 4; IterBAUDDIV < 255; IterBAUDDIV++) { - - /* - * Calculate the value for BRGR register - */ - BRGR_Value = InputClk / (BaudRate * (IterBAUDDIV + 1)); - - /* - * Calculate the baud rate from the BRGR value - */ - CalcBaudRate = InputClk/ (BRGR_Value * (IterBAUDDIV + 1)); - - /* - * Avoid unsigned integer underflow - */ - if (BaudRate > CalcBaudRate) { - BaudError = BaudRate - CalcBaudRate; - } - else { - BaudError = CalcBaudRate - BaudRate; - } - - /* - * Find the calculated baud rate closest to requested baud rate. - */ - if (Best_Error > BaudError) { - - Best_BRGR = BRGR_Value; - Best_BAUDDIV = IterBAUDDIV; - Best_Error = BaudError; - } - } - - /* - * Make sure the best error is not too large. - */ - PercentError = (Best_Error * 100) / BaudRate; - if (XUARTPS_MAX_BAUD_ERROR_RATE < PercentError) { - return XST_UART_BAUD_ERROR; - } - - /* - * Disable TX and RX to avoid glitches when setting the baud rate. - */ - XUartPs_DisableUart(InstancePtr); - - XUartPs_WriteReg(InstancePtr->Config.BaseAddress, - XUARTPS_BAUDGEN_OFFSET, Best_BRGR); - XUartPs_WriteReg(InstancePtr->Config.BaseAddress, - XUARTPS_BAUDDIV_OFFSET, Best_BAUDDIV); - - /* - * Enable device - */ - XUartPs_EnableUart(InstancePtr); - - InstancePtr->BaudRate = BaudRate; - - return XST_SUCCESS; - -} - -void uart_interrupt_handler(struct ZyboUARTState *state) { - u32 IsrStatus; - XUartPs *InstancePtr = state->inst; - struct Queue *queue = state->queue; - - /* - * Read the interrupt ID register to determine which - * interrupt is active - */ - IsrStatus = XUartPs_ReadReg(InstancePtr->Config.BaseAddress, - XUARTPS_IMR_OFFSET); - - IsrStatus &= XUartPs_ReadReg(InstancePtr->Config.BaseAddress, - XUARTPS_ISR_OFFSET); - - /* - * Read the Channel Status Register to determine if there is any data in - * the RX FIFO - */ - - u32 CsrRegister = XUartPs_ReadReg(InstancePtr->Config.BaseAddress, - XUARTPS_SR_OFFSET); - - while (0 == (CsrRegister & XUARTPS_SR_RXEMPTY)) { - u8 byte = XUartPs_ReadReg(InstancePtr->Config.BaseAddress, XUARTPS_FIFO_OFFSET); - queue_add(queue, byte); - CsrRegister = XUartPs_ReadReg(InstancePtr->Config.BaseAddress, XUARTPS_SR_OFFSET); - } - - // Clear the interrupt status. - XUartPs_WriteReg(InstancePtr->Config.BaseAddress, XUARTPS_ISR_OFFSET, - IsrStatus); -} - -/*****************************************************************************/ -/** -* -* This function sets up the interrupt system so interrupts can occur for the -* Uart. This function is application-specific. -* -* @param IntcInstancePtr is a pointer to the instance of the INTC. -* @param UartInstancePtr contains a pointer to the instance of the UART -* driver which is going to be connected to the interrupt -* controller. -* @param UartIntrId is the interrupt Id and is typically -* XPAR_<UARTPS_instance>_INTR value from xparameters.h. -* -* @return XST_SUCCESS if successful, otherwise XST_FAILURE. -* -* @note None. -* -****************************************************************************/ -int SetupInterruptSystem(struct ZyboUARTState *state, u16 UartIntrId, Xil_ExceptionHandler handler) -{ - int Status; - XScuGic_Config *IntcConfig; /* Config for interrupt controller */ - - /* Initialize the interrupt controller driver */ - IntcConfig = XScuGic_LookupConfig(XPAR_SCUGIC_SINGLE_DEVICE_ID); - if (NULL == IntcConfig) { - return XST_FAILURE; - } - - memset(&state->xscugic, 0, sizeof(XScuGic)); - Status = XScuGic_CfgInitialize(&state->xscugic, IntcConfig, - IntcConfig->CpuBaseAddress); - if (Status != XST_SUCCESS) { - return XST_FAILURE; - } - - /* - * Connect the interrupt controller interrupt handler to the - * hardware interrupt handling logic in the processor. - */ - Xil_ExceptionRegisterHandler(XIL_EXCEPTION_ID_INT, - (Xil_ExceptionHandler) XScuGic_InterruptHandler, - &state->xscugic); - - /* - * Connect a device driver handler that will be called when an - * interrupt for the device occurs, the device driver handler - * performs the specific interrupt processing for the device - */ - Status = XScuGic_Connect(&state->xscugic, UartIntrId, - handler, - (void *) state); - if (Status != XST_SUCCESS) { - return XST_FAILURE; - } - - /* Enable the interrupt for the device */ - XScuGic_Enable(&state->xscugic, UartIntrId); - - /* Enable interrupts */ - Xil_ExceptionEnable(); - - return XST_SUCCESS; -} diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/src/lscript.ld b/quad/xsdk_workspace_vivado/real_quad_fresh/src/lscript.ld deleted file mode 100644 index a9e7524bb..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/src/lscript.ld +++ /dev/null @@ -1,284 +0,0 @@ -/*******************************************************************/ -/* */ -/* This file is automatically generated by linker script generator.*/ -/* */ -/* Version: Xilinx EDK 14.7 EDK_P.20131013 */ -/* */ -/* Copyright (c) 2010 Xilinx, Inc. All rights reserved. */ -/* */ -/* Description : Cortex-A9 Linker Script */ -/* */ -/*******************************************************************/ - -_STACK_SIZE = DEFINED(_STACK_SIZE) ? _STACK_SIZE : 0x100000; -_HEAP_SIZE = DEFINED(_HEAP_SIZE) ? _HEAP_SIZE : 0x6400000; - -_ABORT_STACK_SIZE = DEFINED(_ABORT_STACK_SIZE) ? _ABORT_STACK_SIZE : 1024; -_SUPERVISOR_STACK_SIZE = DEFINED(_SUPERVISOR_STACK_SIZE) ? _SUPERVISOR_STACK_SIZE : 2048; -_FIQ_STACK_SIZE = DEFINED(_FIQ_STACK_SIZE) ? _FIQ_STACK_SIZE : 1024; -_UNDEF_STACK_SIZE = DEFINED(_UNDEF_STACK_SIZE) ? _UNDEF_STACK_SIZE : 1024; - -/* Define Memories in the system */ - -MEMORY -{ - ps7_ddr_0_S_AXI_BASEADDR : ORIGIN = 0x00100000, LENGTH = 0x1FF00000 - ps7_ram_0_S_AXI_BASEADDR : ORIGIN = 0x00000000, LENGTH = 0x00030000 - ps7_ram_1_S_AXI_BASEADDR : ORIGIN = 0xFFFF0000, LENGTH = 0x0000FE00 -} - -/* Specify the default entry point to the program */ - -ENTRY(_vector_table) - -/* Define the sections, and where they are mapped in memory */ - -SECTIONS -{ -.text : { - *(.vectors) - *(.boot) - *(.text) - *(.text.*) - *(.gnu.linkonce.t.*) - *(.plt) - *(.gnu_warning) - *(.gcc_execpt_table) - *(.glue_7) - *(.glue_7t) - *(.vfp11_veneer) - *(.ARM.extab) - *(.gnu.linkonce.armextab.*) -} > ps7_ddr_0_S_AXI_BASEADDR - -.init : { - KEEP (*(.init)) -} > ps7_ddr_0_S_AXI_BASEADDR - -.fini : { - KEEP (*(.fini)) -} > ps7_ddr_0_S_AXI_BASEADDR - -.rodata : { - __rodata_start = .; - *(.rodata) - *(.rodata.*) - *(.gnu.linkonce.r.*) - __rodata_end = .; -} > ps7_ddr_0_S_AXI_BASEADDR - -.rodata1 : { - __rodata1_start = .; - *(.rodata1) - *(.rodata1.*) - __rodata1_end = .; -} > ps7_ddr_0_S_AXI_BASEADDR - -.sdata2 : { - __sdata2_start = .; - *(.sdata2) - *(.sdata2.*) - *(.gnu.linkonce.s2.*) - __sdata2_end = .; -} > ps7_ddr_0_S_AXI_BASEADDR - -.sbss2 : { - __sbss2_start = .; - *(.sbss2) - *(.sbss2.*) - *(.gnu.linkonce.sb2.*) - __sbss2_end = .; -} > ps7_ddr_0_S_AXI_BASEADDR - -.data : { - __data_start = .; - *(.data) - *(.data.*) - *(.gnu.linkonce.d.*) - *(.jcr) - *(.got) - *(.got.plt) - __data_end = .; -} > ps7_ddr_0_S_AXI_BASEADDR - -.data1 : { - __data1_start = .; - *(.data1) - *(.data1.*) - __data1_end = .; -} > ps7_ddr_0_S_AXI_BASEADDR - -.got : { - *(.got) -} > ps7_ddr_0_S_AXI_BASEADDR - -.ctors : { - __CTOR_LIST__ = .; - ___CTORS_LIST___ = .; - KEEP (*crtbegin.o(.ctors)) - KEEP (*(EXCLUDE_FILE(*crtend.o) .ctors)) - KEEP (*(SORT(.ctors.*))) - KEEP (*(.ctors)) - __CTOR_END__ = .; - ___CTORS_END___ = .; -} > ps7_ddr_0_S_AXI_BASEADDR - -.dtors : { - __DTOR_LIST__ = .; - ___DTORS_LIST___ = .; - KEEP (*crtbegin.o(.dtors)) - KEEP (*(EXCLUDE_FILE(*crtend.o) .dtors)) - KEEP (*(SORT(.dtors.*))) - KEEP (*(.dtors)) - __DTOR_END__ = .; - ___DTORS_END___ = .; -} > ps7_ddr_0_S_AXI_BASEADDR - -.fixup : { - __fixup_start = .; - *(.fixup) - __fixup_end = .; -} > ps7_ddr_0_S_AXI_BASEADDR - -.eh_frame : { - *(.eh_frame) -} > ps7_ddr_0_S_AXI_BASEADDR - -.eh_framehdr : { - __eh_framehdr_start = .; - *(.eh_framehdr) - __eh_framehdr_end = .; -} > ps7_ddr_0_S_AXI_BASEADDR - -.gcc_except_table : { - *(.gcc_except_table) -} > ps7_ddr_0_S_AXI_BASEADDR - -.mmu_tbl (ALIGN(16384)) : { - __mmu_tbl_start = .; - *(.mmu_tbl) - __mmu_tbl_end = .; -} > ps7_ddr_0_S_AXI_BASEADDR - -.ARM.exidx : { - __exidx_start = .; - *(.ARM.exidx*) - *(.gnu.linkonce.armexidix.*.*) - __exidx_end = .; -} > ps7_ddr_0_S_AXI_BASEADDR - -.preinit_array : { - __preinit_array_start = .; - KEEP (*(SORT(.preinit_array.*))) - KEEP (*(.preinit_array)) - __preinit_array_end = .; -} > ps7_ddr_0_S_AXI_BASEADDR - -.init_array : { - __init_array_start = .; - KEEP (*(SORT(.init_array.*))) - KEEP (*(.init_array)) - __init_array_end = .; -} > ps7_ddr_0_S_AXI_BASEADDR - -.fini_array : { - __fini_array_start = .; - KEEP (*(SORT(.fini_array.*))) - KEEP (*(.fini_array)) - __fini_array_end = .; -} > ps7_ddr_0_S_AXI_BASEADDR - -.ARM.attributes : { - __ARM.attributes_start = .; - *(.ARM.attributes) - __ARM.attributes_end = .; -} > ps7_ddr_0_S_AXI_BASEADDR - -.sdata : { - __sdata_start = .; - *(.sdata) - *(.sdata.*) - *(.gnu.linkonce.s.*) - __sdata_end = .; -} > ps7_ddr_0_S_AXI_BASEADDR - -.sbss (NOLOAD) : { - __sbss_start = .; - *(.sbss) - *(.sbss.*) - *(.gnu.linkonce.sb.*) - __sbss_end = .; -} > ps7_ddr_0_S_AXI_BASEADDR - -.tdata : { - __tdata_start = .; - *(.tdata) - *(.tdata.*) - *(.gnu.linkonce.td.*) - __tdata_end = .; -} > ps7_ddr_0_S_AXI_BASEADDR - -.tbss : { - __tbss_start = .; - *(.tbss) - *(.tbss.*) - *(.gnu.linkonce.tb.*) - __tbss_end = .; -} > ps7_ddr_0_S_AXI_BASEADDR - -.bss (NOLOAD) : { - __bss_start = .; - *(.bss) - *(.bss.*) - *(.gnu.linkonce.b.*) - *(COMMON) - __bss_end = .; -} > ps7_ddr_0_S_AXI_BASEADDR - -_SDA_BASE_ = __sdata_start + ((__sbss_end - __sdata_start) / 2 ); - -_SDA2_BASE_ = __sdata2_start + ((__sbss2_end - __sdata2_start) / 2 ); - -/* Generate Stack and Heap definitions */ - -.heap (NOLOAD) : { - . = ALIGN(16); - _heap = .; - HeapBase = .; - _heap_start = .; - . += _HEAP_SIZE; - _heap_end = .; - HeapLimit = .; -} > ps7_ddr_0_S_AXI_BASEADDR - -.stack (NOLOAD) : { - . = ALIGN(16); - _stack_end = .; - . += _STACK_SIZE; - _stack = .; - __stack = _stack; - . = ALIGN(16); - _irq_stack_end = .; - . += _STACK_SIZE; - __irq_stack = .; - _supervisor_stack_end = .; - . += _SUPERVISOR_STACK_SIZE; - . = ALIGN(16); - __supervisor_stack = .; - _abort_stack_end = .; - . += _ABORT_STACK_SIZE; - . = ALIGN(16); - __abort_stack = .; - _fiq_stack_end = .; - . += _FIQ_STACK_SIZE; - . = ALIGN(16); - __fiq_stack = .; - _undef_stack_end = .; - . += _UNDEF_STACK_SIZE; - . = ALIGN(16); - __undef_stack = .; -} > ps7_ddr_0_S_AXI_BASEADDR - -_end = .; -} - diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/src/main.c b/quad/xsdk_workspace_vivado/real_quad_fresh/src/main.c deleted file mode 100644 index 716a876a9..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/src/main.c +++ /dev/null @@ -1,72 +0,0 @@ -#include <stdio.h> -#include "hw_impl_zybo.h" -#include "quad_app.h" -#include "type_def.h" -#include "platform.h" - -//#define RUN_TESTS - -/** - * Create the hardware drivers, and place them on the hardware struct. - * - * Things to keep in mind: - * - The CommDriver requires a UART. Hence, make the a UARTDriver first - * and then give that instance to the CommDriver. - * - Same for GPSDriver, except it needs a different hardware device. - * - The I2C devices (IMU, LIDAR, Optical Flow), need a I2C bus. Hence - * make a I2CDriver first, then give the appropariate instance the - * device drivers. - * - Currently, we are putting the Lidar on its own bus. Apparently, - * when looking at an OScope with the Lidar on a bus with other - * devices, it does not look right. The SCL line would never - * go all the way back down to 0 volts - */ -int setup_hardware(hardware_t *hardware) { - hardware->rc_receiver = create_zybo_rc_receiver(); - hardware->motors = create_zybo_motors(); - hardware->uart_0 = create_zybo_uart(0); - hardware->uart_1 = create_zybo_uart(1); - hardware->comm = create_zybo_comm(&hardware->uart_0); - hardware->gps = create_zybo_gps(&hardware->uart_1); - hardware->global_timer = create_zybo_global_timer(); - //hardware->axi_timer = create_zybo_axi_timer(); - hardware->mio7_led = create_zybo_mio7_led(); - hardware->sys = create_zybo_system(); - hardware->i2c_0 = create_zybo_i2c(0); - hardware->i2c_1 = create_zybo_i2c(1); - hardware->imu = create_zybo_imu(&hardware->i2c_0); - hardware->lidar = create_zybo_lidar(&hardware->i2c_1); - hardware->of = create_zybo_optical_flow(&hardware->i2c_0); - return 0; -} - -int main() -{ - // Zynq initialization - init_platform(); - -#ifdef RUN_TESTS - //test_zybo_mio7_led_and_system(); - //test_zybo_i2c(); - //test_zybo_i2c_imu(); - test_zybo_i2c_px4flow(); - //test_zybo_i2c_lidar(); - //test_zybo_i2c_all(); - //test_zybo_rc_receiver(); - //test_zybo_motors(); - //test_zybo_uart(); - //test_zybo_axi_timer(); - //test_zybo_uart_comm(); - return 0; -#endif - - // Run the main quad application - quad_main(setup_hardware); - - while(1) { - volatile int i = 0; - i++; - } - - return 0; -} diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/src/platform.c b/quad/xsdk_workspace_vivado/real_quad_fresh/src/platform.c deleted file mode 100644 index ea7849798..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/src/platform.c +++ /dev/null @@ -1,112 +0,0 @@ -/****************************************************************************** -* -* (c) Copyright 2010-2012 Xilinx, Inc. All rights reserved. -* -* This file contains confidential and proprietary information of Xilinx, Inc. -* and is protected under U.S. and international copyright and other -* intellectual property laws. -* -* DISCLAIMER -* This disclaimer is not a license and does not grant any rights to the -* materials distributed herewith. Except as otherwise provided in a valid -* license issued to you by Xilinx, and to the maximum extent permitted by -* applicable law: (1) THESE MATERIALS ARE MADE AVAILABLE "AS IS" AND WITH ALL -* FAULTS, AND XILINX HEREBY DISCLAIMS ALL WARRANTIES AND CONDITIONS, EXPRESS, -* IMPLIED, OR STATUTORY, INCLUDING BUT NOT LIMITED TO WARRANTIES OF -* MERCHANTABILITY, NON-INFRINGEMENT, OR FITNESS FOR ANY PARTICULAR PURPOSE; -* and (2) Xilinx shall not be liable (whether in contract or tort, including -* negligence, or under any other theory of liability) for any loss or damage -* of any kind or nature related to, arising under or in connection with these -* materials, including for any direct, or any indirect, special, incidental, -* or consequential loss or damage (including loss of data, profits, goodwill, -* or any type of loss or damage suffered as a result of any action brought by -* a third party) even if such damage or loss was reasonably foreseeable or -* Xilinx had been advised of the possibility of the same. -* -* CRITICAL APPLICATIONS -* Xilinx products are not designed or intended to be fail-safe, or for use in -* any application requiring fail-safe performance, such as life-support or -* safety devices or systems, Class III medical devices, nuclear facilities, -* applications related to the deployment of airbags, or any other applications -* that could lead to death, personal injury, or severe property or -* environmental damage (individually and collectively, "Critical -* Applications"). Customer assumes the sole risk and liability of any use of -* Xilinx products in Critical Applications, subject only to applicable laws -* and regulations governing limitations on product liability. -* -* THIS COPYRIGHT NOTICE AND DISCLAIMER MUST BE RETAINED AS PART OF THIS FILE -* AT ALL TIMES. -* -******************************************************************************/ - -#include "xparameters.h" -#include "xil_cache.h" - -#include "platform_config.h" - -/* - * Uncomment the following line if ps7 init source files are added in the - * source directory for compiling example outside of SDK. - */ -/*#include "ps7_init.h"*/ - -#ifdef STDOUT_IS_16550 - #include "xuartns550_l.h" - - #define UART_BAUD 9600 -#endif - -void -enable_caches() -{ -#ifdef __PPC__ - Xil_ICacheEnableRegion(CACHEABLE_REGION_MASK); - Xil_DCacheEnableRegion(CACHEABLE_REGION_MASK); -#elif __MICROBLAZE__ -#ifdef XPAR_MICROBLAZE_USE_ICACHE - Xil_ICacheEnable(); -#endif -#ifdef XPAR_MICROBLAZE_USE_DCACHE - Xil_DCacheEnable(); -#endif -#endif -} - -void -disable_caches() -{ - Xil_DCacheDisable(); - Xil_ICacheDisable(); -} - -void -init_uart() -{ -#ifdef STDOUT_IS_16550 - XUartNs550_SetBaud(STDOUT_BASEADDR, XPAR_XUARTNS550_CLOCK_HZ, UART_BAUD); - XUartNs550_SetLineControlReg(STDOUT_BASEADDR, XUN_LCR_8_DATA_BITS); -#endif -#ifdef STDOUT_IS_PS7_UART - /* Bootrom/BSP configures PS7 UART to 115200 bps */ -#endif -} - -void -init_platform() -{ - /* - * If you want to run this example outside of SDK, - * uncomment the following line and also #include "ps7_init.h" at the top. - * Make sure that the ps7_init.c and ps7_init.h files are included - * along with this example source files for compilation. - */ - /* ps7_init();*/ - enable_caches(); - init_uart(); -} - -void -cleanup_platform() -{ - disable_caches(); -} diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/src/platform.h b/quad/xsdk_workspace_vivado/real_quad_fresh/src/platform.h deleted file mode 100644 index efc90882b..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/src/platform.h +++ /dev/null @@ -1,27 +0,0 @@ -/* - * Copyright (c) 2008 Xilinx, Inc. All rights reserved. - * - * Xilinx, Inc. - * XILINX IS PROVIDING THIS DESIGN, CODE, OR INFORMATION "AS IS" AS A - * COURTESY TO YOU. BY PROVIDING THIS DESIGN, CODE, OR INFORMATION AS - * ONE POSSIBLE IMPLEMENTATION OF THIS FEATURE, APPLICATION OR - * STANDARD, XILINX IS MAKING NO REPRESENTATION THAT THIS IMPLEMENTATION - * IS FREE FROM ANY CLAIMS OF INFRINGEMENT, AND YOU ARE RESPONSIBLE - * FOR OBTAINING ANY RIGHTS YOU MAY REQUIRE FOR YOUR IMPLEMENTATION. - * XILINX EXPRESSLY DISCLAIMS ANY WARRANTY WHATSOEVER WITH RESPECT TO - * THE ADEQUACY OF THE IMPLEMENTATION, INCLUDING BUT NOT LIMITED TO - * ANY WARRANTIES OR REPRESENTATIONS THAT THIS IMPLEMENTATION IS FREE - * FROM CLAIMS OF INFRINGEMENT, IMPLIED WARRANTIES OF MERCHANTABILITY - * AND FITNESS FOR A PARTICULAR PURPOSE. - * - */ - -#ifndef __PLATFORM_H_ -#define __PLATFORM_H_ - -#include "platform_config.h" - -void init_platform(); -void cleanup_platform(); - -#endif diff --git a/quad/xsdk_workspace_vivado/real_quad_fresh/src/platform_config.h b/quad/xsdk_workspace_vivado/real_quad_fresh/src/platform_config.h deleted file mode 100644 index c07ab1cba..000000000 --- a/quad/xsdk_workspace_vivado/real_quad_fresh/src/platform_config.h +++ /dev/null @@ -1,10 +0,0 @@ -#ifndef __PLATFORM_CONFIG_H_ -#define __PLATFORM_CONFIG_H_ - -#define STDOUT_IS_PS7_UART -#define UART_DEVICE_ID 0 -#ifdef __PPC__ -#define CACHEABLE_REGION_MASK 0xf0000001 -#endif - -#endif diff --git a/quad/xsdk_workspace_vivado/recorder_test/.cproject b/quad/xsdk_workspace_vivado/recorder_test/.cproject deleted file mode 100644 index e03e165f1..000000000 --- a/quad/xsdk_workspace_vivado/recorder_test/.cproject +++ /dev/null @@ -1,162 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage"> - <storageModule moduleId="org.eclipse.cdt.core.settings"> - <cconfiguration id="xilinx.gnu.armv7.exe.debug.2034508604"> - <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="xilinx.gnu.armv7.exe.debug.2034508604" moduleId="org.eclipse.cdt.core.settings" name="Debug"> - <externalSettings/> - <extensions> - <extension id="com.xilinx.sdk.managedbuilder.XELF.arm.a53.x32" point="org.eclipse.cdt.core.BinaryParser"/> - <extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> - <extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> - <extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> - <extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/> - <extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> - </extensions> - </storageModule> - <storageModule moduleId="cdtBuildSystem" version="4.0.0"> - <configuration artifactExtension="elf" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug" cleanCommand="rm -rf" description="" id="xilinx.gnu.armv7.exe.debug.2034508604" name="Debug" parent="xilinx.gnu.armv7.exe.debug" prebuildStep="a9-linaro-pre-build-step"> - <folderInfo id="xilinx.gnu.armv7.exe.debug.2034508604." name="/" resourcePath=""> - <toolChain id="xilinx.gnu.armv7.exe.debug.toolchain.575332370" name="Xilinx ARM v7 GNU Toolchain" superClass="xilinx.gnu.armv7.exe.debug.toolchain"> - <targetPlatform binaryParser="com.xilinx.sdk.managedbuilder.XELF.arm.a53.x32" id="xilinx.armv7.target.gnu.base.debug.709054258" isAbstract="false" name="Debug Platform" superClass="xilinx.armv7.target.gnu.base.debug"/> - <builder buildPath="${workspace_loc:/recorder_test}/Debug" enableAutoBuild="true" id="xilinx.gnu.armv7.toolchain.builder.debug.1947640059" managedBuildOn="true" name="GNU make.Debug" superClass="xilinx.gnu.armv7.toolchain.builder.debug"/> - <tool id="xilinx.gnu.armv7.c.toolchain.assembler.debug.166918705" name="ARM v7 gcc assembler" superClass="xilinx.gnu.armv7.c.toolchain.assembler.debug"> - <inputType id="xilinx.gnu.assembler.input.1626658287" superClass="xilinx.gnu.assembler.input"/> - </tool> - <tool id="xilinx.gnu.armv7.c.toolchain.compiler.debug.1587818788" name="ARM v7 gcc compiler" superClass="xilinx.gnu.armv7.c.toolchain.compiler.debug"> - <option defaultValue="gnu.c.optimization.level.none" id="xilinx.gnu.compiler.option.optimization.level.620313496" superClass="xilinx.gnu.compiler.option.optimization.level" valueType="enumerated"/> - <option id="xilinx.gnu.compiler.option.debugging.level.1586942163" superClass="xilinx.gnu.compiler.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/> - <option id="xilinx.gnu.compiler.inferred.swplatform.includes.1170556757" superClass="xilinx.gnu.compiler.inferred.swplatform.includes" valueType="includePath"> - <listOptionValue builtIn="false" value="../../recorder_test_bsp/ps7_cortexa9_0/include"/> - </option> - <option id="xilinx.gnu.compiler.misc.other.1899462954" superClass="xilinx.gnu.compiler.misc.other" value="-c -fmessage-length=0 -MT"$@" -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard" valueType="string"/> - <inputType id="xilinx.gnu.armv7.c.compiler.input.711971084" name="C source files" superClass="xilinx.gnu.armv7.c.compiler.input"/> - </tool> - <tool id="xilinx.gnu.armv7.cxx.toolchain.compiler.debug.1190361112" name="ARM v7 g++ compiler" superClass="xilinx.gnu.armv7.cxx.toolchain.compiler.debug"> - <option defaultValue="gnu.c.optimization.level.none" id="xilinx.gnu.compiler.option.optimization.level.1438279653" superClass="xilinx.gnu.compiler.option.optimization.level" valueType="enumerated"/> - <option id="xilinx.gnu.compiler.option.debugging.level.1094729525" superClass="xilinx.gnu.compiler.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/> - <option id="xilinx.gnu.compiler.inferred.swplatform.includes.1189637380" superClass="xilinx.gnu.compiler.inferred.swplatform.includes" valueType="includePath"> - <listOptionValue builtIn="false" value="../../recorder_test_bsp/ps7_cortexa9_0/include"/> - </option> - </tool> - <tool id="xilinx.gnu.armv7.toolchain.archiver.1154403218" name="ARM v7 archiver" superClass="xilinx.gnu.armv7.toolchain.archiver"/> - <tool id="xilinx.gnu.armv7.c.toolchain.linker.debug.248177393" name="ARM v7 gcc linker" superClass="xilinx.gnu.armv7.c.toolchain.linker.debug"> - <option id="xilinx.gnu.linker.inferred.swplatform.lpath.1838010315" superClass="xilinx.gnu.linker.inferred.swplatform.lpath" valueType="libPaths"> - <listOptionValue builtIn="false" value="../../recorder_test_bsp/ps7_cortexa9_0/lib"/> - </option> - <option id="xilinx.gnu.linker.inferred.swplatform.flags.6504880" superClass="xilinx.gnu.linker.inferred.swplatform.flags" valueType="libs"> - <listOptionValue builtIn="false" value="-Wl,--start-group,-lxil,-lgcc,-lc,--end-group"/> - </option> - <option id="xilinx.gnu.c.linker.option.lscript.1519017804" superClass="xilinx.gnu.c.linker.option.lscript" value="../src/lscript.ld" valueType="string"/> - <option id="xilinx.gnu.c.link.option.ldflags.350759104" superClass="xilinx.gnu.c.link.option.ldflags" value=" -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -Wl,-build-id=none -specs=Xilinx.spec" valueType="string"/> - <inputType id="xilinx.gnu.linker.input.602689678" superClass="xilinx.gnu.linker.input"> - <additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/> - <additionalInput kind="additionalinput" paths="$(LIBS)"/> - </inputType> - <inputType id="xilinx.gnu.linker.input.lscript.673897898" name="Linker Script" superClass="xilinx.gnu.linker.input.lscript"/> - </tool> - <tool id="xilinx.gnu.armv7.cxx.toolchain.linker.debug.123650781" name="ARM v7 g++ linker" superClass="xilinx.gnu.armv7.cxx.toolchain.linker.debug"> - <option id="xilinx.gnu.linker.inferred.swplatform.lpath.1222421707" superClass="xilinx.gnu.linker.inferred.swplatform.lpath" valueType="libPaths"> - <listOptionValue builtIn="false" value="../../recorder_test_bsp/ps7_cortexa9_0/lib"/> - </option> - <option id="xilinx.gnu.linker.inferred.swplatform.flags.1204833277" superClass="xilinx.gnu.linker.inferred.swplatform.flags" valueType="libs"> - <listOptionValue builtIn="false" value="-Wl,--start-group,-lxil,-lgcc,-lc,--end-group"/> - </option> - <option id="xilinx.gnu.c.linker.option.lscript.1077690704" superClass="xilinx.gnu.c.linker.option.lscript" value="../src/lscript.ld" valueType="string"/> - </tool> - <tool id="xilinx.gnu.armv7.size.debug.430957816" name="ARM v7 Print Size" superClass="xilinx.gnu.armv7.size.debug"/> - </toolChain> - </folderInfo> - </configuration> - </storageModule> - <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> - </cconfiguration> - <cconfiguration id="xilinx.gnu.armv7.exe.release.1066765704"> - <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="xilinx.gnu.armv7.exe.release.1066765704" moduleId="org.eclipse.cdt.core.settings" name="Release"> - <externalSettings/> - <extensions> - <extension id="com.xilinx.sdk.managedbuilder.XELF.arm.a53.x32" point="org.eclipse.cdt.core.BinaryParser"/> - <extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> - <extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> - <extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> - <extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/> - <extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> - </extensions> - </storageModule> - <storageModule moduleId="cdtBuildSystem" version="4.0.0"> - <configuration artifactExtension="elf" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release" cleanCommand="rm -rf" description="" id="xilinx.gnu.armv7.exe.release.1066765704" name="Release" parent="xilinx.gnu.armv7.exe.release" prebuildStep="a9-linaro-pre-build-step"> - <folderInfo id="xilinx.gnu.armv7.exe.release.1066765704." name="/" resourcePath=""> - <toolChain id="xilinx.gnu.armv7.exe.release.toolchain.289544707" name="Xilinx ARM v7 GNU Toolchain" superClass="xilinx.gnu.armv7.exe.release.toolchain"> - <targetPlatform binaryParser="com.xilinx.sdk.managedbuilder.XELF.arm.a53.x32" id="xilinx.armv7.target.gnu.base.release.581536408" isAbstract="false" name="Release Platform" superClass="xilinx.armv7.target.gnu.base.release"/> - <builder buildPath="${workspace_loc:/recorder_test}/Release" enableAutoBuild="true" id="xilinx.gnu.armv7.toolchain.builder.release.640265841" managedBuildOn="true" name="GNU make.Release" superClass="xilinx.gnu.armv7.toolchain.builder.release"/> - <tool id="xilinx.gnu.armv7.c.toolchain.assembler.release.886184670" name="ARM v7 gcc assembler" superClass="xilinx.gnu.armv7.c.toolchain.assembler.release"> - <inputType id="xilinx.gnu.assembler.input.398987604" superClass="xilinx.gnu.assembler.input"/> - </tool> - <tool id="xilinx.gnu.armv7.c.toolchain.compiler.release.1685442427" name="ARM v7 gcc compiler" superClass="xilinx.gnu.armv7.c.toolchain.compiler.release"> - <option defaultValue="gnu.c.optimization.level.more" id="xilinx.gnu.compiler.option.optimization.level.1851747885" superClass="xilinx.gnu.compiler.option.optimization.level" valueType="enumerated"/> - <option id="xilinx.gnu.compiler.option.debugging.level.163777546" superClass="xilinx.gnu.compiler.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/> - <option id="xilinx.gnu.compiler.inferred.swplatform.includes.1186065926" superClass="xilinx.gnu.compiler.inferred.swplatform.includes" valueType="includePath"> - <listOptionValue builtIn="false" value="../../recorder_test_bsp/ps7_cortexa9_0/include"/> - </option> - <option id="xilinx.gnu.compiler.misc.other.1604673048" superClass="xilinx.gnu.compiler.misc.other" value="-c -fmessage-length=0 -MT"$@" -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard" valueType="string"/> - <inputType id="xilinx.gnu.armv7.c.compiler.input.1616205127" name="C source files" superClass="xilinx.gnu.armv7.c.compiler.input"/> - </tool> - <tool id="xilinx.gnu.armv7.cxx.toolchain.compiler.release.1739584158" name="ARM v7 g++ compiler" superClass="xilinx.gnu.armv7.cxx.toolchain.compiler.release"> - <option defaultValue="gnu.c.optimization.level.more" id="xilinx.gnu.compiler.option.optimization.level.831716779" superClass="xilinx.gnu.compiler.option.optimization.level" valueType="enumerated"/> - <option id="xilinx.gnu.compiler.option.debugging.level.1357923229" superClass="xilinx.gnu.compiler.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/> - <option id="xilinx.gnu.compiler.inferred.swplatform.includes.16319875" superClass="xilinx.gnu.compiler.inferred.swplatform.includes" valueType="includePath"> - <listOptionValue builtIn="false" value="../../recorder_test_bsp/ps7_cortexa9_0/include"/> - </option> - </tool> - <tool id="xilinx.gnu.armv7.toolchain.archiver.2048807594" name="ARM v7 archiver" superClass="xilinx.gnu.armv7.toolchain.archiver"/> - <tool id="xilinx.gnu.armv7.c.toolchain.linker.release.1359776086" name="ARM v7 gcc linker" superClass="xilinx.gnu.armv7.c.toolchain.linker.release"> - <option id="xilinx.gnu.linker.inferred.swplatform.lpath.1331827899" superClass="xilinx.gnu.linker.inferred.swplatform.lpath" valueType="libPaths"> - <listOptionValue builtIn="false" value="../../recorder_test_bsp/ps7_cortexa9_0/lib"/> - </option> - <option id="xilinx.gnu.linker.inferred.swplatform.flags.118356068" superClass="xilinx.gnu.linker.inferred.swplatform.flags" valueType="libs"> - <listOptionValue builtIn="false" value="-Wl,--start-group,-lxil,-lgcc,-lc,--end-group"/> - </option> - <option id="xilinx.gnu.c.linker.option.lscript.2094771190" superClass="xilinx.gnu.c.linker.option.lscript" value="../src/lscript.ld" valueType="string"/> - <option id="xilinx.gnu.c.link.option.ldflags.908761738" superClass="xilinx.gnu.c.link.option.ldflags" value=" -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -Wl,-build-id=none -specs=Xilinx.spec" valueType="string"/> - <inputType id="xilinx.gnu.linker.input.1876816673" superClass="xilinx.gnu.linker.input"> - <additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/> - <additionalInput kind="additionalinput" paths="$(LIBS)"/> - </inputType> - <inputType id="xilinx.gnu.linker.input.lscript.206608505" name="Linker Script" superClass="xilinx.gnu.linker.input.lscript"/> - </tool> - <tool id="xilinx.gnu.armv7.cxx.toolchain.linker.release.1349635188" name="ARM v7 g++ linker" superClass="xilinx.gnu.armv7.cxx.toolchain.linker.release"> - <option id="xilinx.gnu.linker.inferred.swplatform.lpath.1307213450" superClass="xilinx.gnu.linker.inferred.swplatform.lpath" valueType="libPaths"> - <listOptionValue builtIn="false" value="../../recorder_test_bsp/ps7_cortexa9_0/lib"/> - </option> - <option id="xilinx.gnu.linker.inferred.swplatform.flags.823400789" superClass="xilinx.gnu.linker.inferred.swplatform.flags" valueType="libs"> - <listOptionValue builtIn="false" value="-Wl,--start-group,-lxil,-lgcc,-lc,--end-group"/> - </option> - <option id="xilinx.gnu.c.linker.option.lscript.1787281543" superClass="xilinx.gnu.c.linker.option.lscript" value="../src/lscript.ld" valueType="string"/> - </tool> - <tool id="xilinx.gnu.armv7.size.release.442210397" name="ARM v7 Print Size" superClass="xilinx.gnu.armv7.size.release"/> - </toolChain> - </folderInfo> - </configuration> - </storageModule> - <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> - </cconfiguration> - </storageModule> - <storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/> - <storageModule moduleId="cdtBuildSystem" version="4.0.0"> - <project id="recorder_test.xilinx.gnu.armv7.exe.174313142" name="Xilinx ARM v7 Executable" projectType="xilinx.gnu.armv7.exe"/> - </storageModule> - <storageModule moduleId="scannerConfiguration"> - <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/> - <scannerConfigBuildInfo instanceId="xilinx.gnu.armv7.exe.debug.2034508604;xilinx.gnu.armv7.exe.debug.2034508604.;xilinx.gnu.armv7.c.toolchain.compiler.debug.1587818788;xilinx.gnu.armv7.c.compiler.input.711971084"> - <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.xilinx.managedbuilder.ui.ARMA53X32GCCManagedMakePerProjectProfileC"/> - </scannerConfigBuildInfo> - <scannerConfigBuildInfo instanceId="xilinx.gnu.armv7.exe.release.1066765704;xilinx.gnu.armv7.exe.release.1066765704."> - <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.xilinx.managedbuilder.ui.ARMA53X32GCCManagedMakePerProjectProfileC"/> - </scannerConfigBuildInfo> - <scannerConfigBuildInfo instanceId="xilinx.gnu.armv7.exe.release.1066765704;xilinx.gnu.armv7.exe.release.1066765704.;xilinx.gnu.armv7.c.toolchain.compiler.release.1685442427;xilinx.gnu.armv7.c.compiler.input.1616205127"> - <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.xilinx.managedbuilder.ui.ARMA53X32GCCManagedMakePerProjectProfileC"/> - </scannerConfigBuildInfo> - <scannerConfigBuildInfo instanceId="xilinx.gnu.armv7.exe.debug.2034508604;xilinx.gnu.armv7.exe.debug.2034508604."> - <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.xilinx.managedbuilder.ui.ARMA53X32GCCManagedMakePerProjectProfileC"/> - </scannerConfigBuildInfo> - </storageModule> -</cproject> diff --git a/quad/xsdk_workspace_vivado/recorder_test/.gitignore b/quad/xsdk_workspace_vivado/recorder_test/.gitignore deleted file mode 100644 index 3df573fe6..000000000 --- a/quad/xsdk_workspace_vivado/recorder_test/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/Debug/ diff --git a/quad/xsdk_workspace_vivado/recorder_test/.project b/quad/xsdk_workspace_vivado/recorder_test/.project deleted file mode 100644 index 10edf8bc7..000000000 --- a/quad/xsdk_workspace_vivado/recorder_test/.project +++ /dev/null @@ -1,26 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<projectDescription> - <name>recorder_test</name> - <comment>Created by SDK v2018.2. recorder_test_bsp - ps7_cortexa9_0</comment> - <projects> - <project>recorder_test_bsp</project> - </projects> - <buildSpec> - <buildCommand> - <name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name> - <arguments> - </arguments> - </buildCommand> - <buildCommand> - <name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name> - <triggers>full,incremental,</triggers> - <arguments> - </arguments> - </buildCommand> - </buildSpec> - <natures> - <nature>org.eclipse.cdt.core.cnature</nature> - <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature> - <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature> - </natures> -</projectDescription> diff --git a/quad/xsdk_workspace_vivado/recorder_test/src/helloworld.c b/quad/xsdk_workspace_vivado/recorder_test/src/helloworld.c deleted file mode 100644 index 879c4edd4..000000000 --- a/quad/xsdk_workspace_vivado/recorder_test/src/helloworld.c +++ /dev/null @@ -1,65 +0,0 @@ -/****************************************************************************** -* -* Copyright (C) 2009 - 2014 Xilinx, Inc. All rights reserved. -* -* Permission is hereby granted, free of charge, to any person obtaining a copy -* of this software and associated documentation files (the "Software"), to deal -* in the Software without restriction, including without limitation the rights -* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -* copies of the Software, and to permit persons to whom the Software is -* furnished to do so, subject to the following conditions: -* -* The above copyright notice and this permission notice shall be included in -* all copies or substantial portions of the Software. -* -* Use of the Software is limited solely to applications: -* (a) running on a Xilinx device, or -* (b) that interact with a Xilinx device through a bus or interconnect. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -* XILINX BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF -* OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -* SOFTWARE. -* -* Except as contained in this notice, the name of the Xilinx shall not be used -* in advertising or otherwise to promote the sale, use or other dealings in -* this Software without prior written authorization from Xilinx. -* -******************************************************************************/ - -/* - * helloworld.c: simple test application - * - * This application configures UART 16550 to baud rate 9600. - * PS7 UART (Zynq) is not initialized by this application, since - * bootrom/bsp configures it to baud rate 115200 - * - * ------------------------------------------------ - * | UART TYPE BAUD RATE | - * ------------------------------------------------ - * uartns550 9600 - * uartlite Configurable only in HW design - * ps7_uart 115200 (configured by bootrom/bsp) - */ - -#include <stdio.h> -#include "platform.h" -#include "xil_printf.h" - - -int main() -{ - init_platform(); - - print("Hello World\n\r"); - - while(1) { - xil_printf("Hello World 0: %10d %10d\r", *(volatile int*)(0x43C00000), *(volatile int*)(0x43C00004)); - } - - cleanup_platform(); - return 0; -} diff --git a/quad/xsdk_workspace_vivado/recorder_test/src/lscript.ld b/quad/xsdk_workspace_vivado/recorder_test/src/lscript.ld deleted file mode 100644 index fe0de6cb7..000000000 --- a/quad/xsdk_workspace_vivado/recorder_test/src/lscript.ld +++ /dev/null @@ -1,288 +0,0 @@ -/*******************************************************************/ -/* */ -/* This file is automatically generated by linker script generator.*/ -/* */ -/* Version: */ -/* */ -/* Copyright (c) 2010-2016 Xilinx, Inc. All rights reserved. */ -/* */ -/* Description : Cortex-A9 Linker Script */ -/* */ -/*******************************************************************/ - -_STACK_SIZE = DEFINED(_STACK_SIZE) ? _STACK_SIZE : 0x2000; -_HEAP_SIZE = DEFINED(_HEAP_SIZE) ? _HEAP_SIZE : 0x2000; - -_ABORT_STACK_SIZE = DEFINED(_ABORT_STACK_SIZE) ? _ABORT_STACK_SIZE : 1024; -_SUPERVISOR_STACK_SIZE = DEFINED(_SUPERVISOR_STACK_SIZE) ? _SUPERVISOR_STACK_SIZE : 2048; -_IRQ_STACK_SIZE = DEFINED(_IRQ_STACK_SIZE) ? _IRQ_STACK_SIZE : 1024; -_FIQ_STACK_SIZE = DEFINED(_FIQ_STACK_SIZE) ? _FIQ_STACK_SIZE : 1024; -_UNDEF_STACK_SIZE = DEFINED(_UNDEF_STACK_SIZE) ? _UNDEF_STACK_SIZE : 1024; - -/* Define Memories in the system */ - -MEMORY -{ - ps7_ddr_0 : ORIGIN = 0x100000, LENGTH = 0x3FF00000 - ps7_qspi_linear_0 : ORIGIN = 0xFC000000, LENGTH = 0x1000000 - ps7_ram_0 : ORIGIN = 0x0, LENGTH = 0x30000 - ps7_ram_1 : ORIGIN = 0xFFFF0000, LENGTH = 0xFE00 -} - -/* Specify the default entry point to the program */ - -ENTRY(_vector_table) - -/* Define the sections, and where they are mapped in memory */ - -SECTIONS -{ -.text : { - KEEP (*(.vectors)) - *(.boot) - *(.text) - *(.text.*) - *(.gnu.linkonce.t.*) - *(.plt) - *(.gnu_warning) - *(.gcc_execpt_table) - *(.glue_7) - *(.glue_7t) - *(.vfp11_veneer) - *(.ARM.extab) - *(.gnu.linkonce.armextab.*) -} > ps7_ddr_0 - -.init : { - KEEP (*(.init)) -} > ps7_ddr_0 - -.fini : { - KEEP (*(.fini)) -} > ps7_ddr_0 - -.rodata : { - __rodata_start = .; - *(.rodata) - *(.rodata.*) - *(.gnu.linkonce.r.*) - __rodata_end = .; -} > ps7_ddr_0 - -.rodata1 : { - __rodata1_start = .; - *(.rodata1) - *(.rodata1.*) - __rodata1_end = .; -} > ps7_ddr_0 - -.sdata2 : { - __sdata2_start = .; - *(.sdata2) - *(.sdata2.*) - *(.gnu.linkonce.s2.*) - __sdata2_end = .; -} > ps7_ddr_0 - -.sbss2 : { - __sbss2_start = .; - *(.sbss2) - *(.sbss2.*) - *(.gnu.linkonce.sb2.*) - __sbss2_end = .; -} > ps7_ddr_0 - -.data : { - __data_start = .; - *(.data) - *(.data.*) - *(.gnu.linkonce.d.*) - *(.jcr) - *(.got) - *(.got.plt) - __data_end = .; -} > ps7_ddr_0 - -.data1 : { - __data1_start = .; - *(.data1) - *(.data1.*) - __data1_end = .; -} > ps7_ddr_0 - -.got : { - *(.got) -} > ps7_ddr_0 - -.ctors : { - __CTOR_LIST__ = .; - ___CTORS_LIST___ = .; - KEEP (*crtbegin.o(.ctors)) - KEEP (*(EXCLUDE_FILE(*crtend.o) .ctors)) - KEEP (*(SORT(.ctors.*))) - KEEP (*(.ctors)) - __CTOR_END__ = .; - ___CTORS_END___ = .; -} > ps7_ddr_0 - -.dtors : { - __DTOR_LIST__ = .; - ___DTORS_LIST___ = .; - KEEP (*crtbegin.o(.dtors)) - KEEP (*(EXCLUDE_FILE(*crtend.o) .dtors)) - KEEP (*(SORT(.dtors.*))) - KEEP (*(.dtors)) - __DTOR_END__ = .; - ___DTORS_END___ = .; -} > ps7_ddr_0 - -.fixup : { - __fixup_start = .; - *(.fixup) - __fixup_end = .; -} > ps7_ddr_0 - -.eh_frame : { - *(.eh_frame) -} > ps7_ddr_0 - -.eh_framehdr : { - __eh_framehdr_start = .; - *(.eh_framehdr) - __eh_framehdr_end = .; -} > ps7_ddr_0 - -.gcc_except_table : { - *(.gcc_except_table) -} > ps7_ddr_0 - -.mmu_tbl (ALIGN(16384)) : { - __mmu_tbl_start = .; - *(.mmu_tbl) - __mmu_tbl_end = .; -} > ps7_ddr_0 - -.ARM.exidx : { - __exidx_start = .; - *(.ARM.exidx*) - *(.gnu.linkonce.armexidix.*.*) - __exidx_end = .; -} > ps7_ddr_0 - -.preinit_array : { - __preinit_array_start = .; - KEEP (*(SORT(.preinit_array.*))) - KEEP (*(.preinit_array)) - __preinit_array_end = .; -} > ps7_ddr_0 - -.init_array : { - __init_array_start = .; - KEEP (*(SORT(.init_array.*))) - KEEP (*(.init_array)) - __init_array_end = .; -} > ps7_ddr_0 - -.fini_array : { - __fini_array_start = .; - KEEP (*(SORT(.fini_array.*))) - KEEP (*(.fini_array)) - __fini_array_end = .; -} > ps7_ddr_0 - -.ARM.attributes : { - __ARM.attributes_start = .; - *(.ARM.attributes) - __ARM.attributes_end = .; -} > ps7_ddr_0 - -.sdata : { - __sdata_start = .; - *(.sdata) - *(.sdata.*) - *(.gnu.linkonce.s.*) - __sdata_end = .; -} > ps7_ddr_0 - -.sbss (NOLOAD) : { - __sbss_start = .; - *(.sbss) - *(.sbss.*) - *(.gnu.linkonce.sb.*) - __sbss_end = .; -} > ps7_ddr_0 - -.tdata : { - __tdata_start = .; - *(.tdata) - *(.tdata.*) - *(.gnu.linkonce.td.*) - __tdata_end = .; -} > ps7_ddr_0 - -.tbss : { - __tbss_start = .; - *(.tbss) - *(.tbss.*) - *(.gnu.linkonce.tb.*) - __tbss_end = .; -} > ps7_ddr_0 - -.bss (NOLOAD) : { - __bss_start = .; - *(.bss) - *(.bss.*) - *(.gnu.linkonce.b.*) - *(COMMON) - __bss_end = .; -} > ps7_ddr_0 - -_SDA_BASE_ = __sdata_start + ((__sbss_end - __sdata_start) / 2 ); - -_SDA2_BASE_ = __sdata2_start + ((__sbss2_end - __sdata2_start) / 2 ); - -/* Generate Stack and Heap definitions */ - -.heap (NOLOAD) : { - . = ALIGN(16); - _heap = .; - HeapBase = .; - _heap_start = .; - . += _HEAP_SIZE; - _heap_end = .; - HeapLimit = .; -} > ps7_ddr_0 - -.stack (NOLOAD) : { - . = ALIGN(16); - _stack_end = .; - . += _STACK_SIZE; - . = ALIGN(16); - _stack = .; - __stack = _stack; - . = ALIGN(16); - _irq_stack_end = .; - . += _IRQ_STACK_SIZE; - . = ALIGN(16); - __irq_stack = .; - _supervisor_stack_end = .; - . += _SUPERVISOR_STACK_SIZE; - . = ALIGN(16); - __supervisor_stack = .; - _abort_stack_end = .; - . += _ABORT_STACK_SIZE; - . = ALIGN(16); - __abort_stack = .; - _fiq_stack_end = .; - . += _FIQ_STACK_SIZE; - . = ALIGN(16); - __fiq_stack = .; - _undef_stack_end = .; - . += _UNDEF_STACK_SIZE; - . = ALIGN(16); - __undef_stack = .; -} > ps7_ddr_0 - -_end = .; -} - diff --git a/quad/xsdk_workspace_vivado/recorder_test/src/platform.c b/quad/xsdk_workspace_vivado/recorder_test/src/platform.c deleted file mode 100644 index 0ee2dcbaf..000000000 --- a/quad/xsdk_workspace_vivado/recorder_test/src/platform.c +++ /dev/null @@ -1,111 +0,0 @@ -/****************************************************************************** -* -* Copyright (C) 2010 - 2015 Xilinx, Inc. All rights reserved. -* -* Permission is hereby granted, free of charge, to any person obtaining a copy -* of this software and associated documentation files (the "Software"), to deal -* in the Software without restriction, including without limitation the rights -* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -* copies of the Software, and to permit persons to whom the Software is -* furnished to do so, subject to the following conditions: -* -* The above copyright notice and this permission notice shall be included in -* all copies or substantial portions of the Software. -* -* Use of the Software is limited solely to applications: -* (a) running on a Xilinx device, or -* (b) that interact with a Xilinx device through a bus or interconnect. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -* XILINX BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF -* OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -* SOFTWARE. -* -* Except as contained in this notice, the name of the Xilinx shall not be used -* in advertising or otherwise to promote the sale, use or other dealings in -* this Software without prior written authorization from Xilinx. -* -******************************************************************************/ - -#include "xparameters.h" -#include "xil_cache.h" - -#include "platform_config.h" - -/* - * Uncomment one of the following two lines, depending on the target, - * if ps7/psu init source files are added in the source directory for - * compiling example outside of SDK. - */ -/*#include "ps7_init.h"*/ -/*#include "psu_init.h"*/ - -#ifdef STDOUT_IS_16550 - #include "xuartns550_l.h" - - #define UART_BAUD 9600 -#endif - -void -enable_caches() -{ -#ifdef __PPC__ - Xil_ICacheEnableRegion(CACHEABLE_REGION_MASK); - Xil_DCacheEnableRegion(CACHEABLE_REGION_MASK); -#elif __MICROBLAZE__ -#ifdef XPAR_MICROBLAZE_USE_ICACHE - Xil_ICacheEnable(); -#endif -#ifdef XPAR_MICROBLAZE_USE_DCACHE - Xil_DCacheEnable(); -#endif -#endif -} - -void -disable_caches() -{ -#ifdef __MICROBLAZE__ -#ifdef XPAR_MICROBLAZE_USE_DCACHE - Xil_DCacheDisable(); -#endif -#ifdef XPAR_MICROBLAZE_USE_ICACHE - Xil_ICacheDisable(); -#endif -#endif -} - -void -init_uart() -{ -#ifdef STDOUT_IS_16550 - XUartNs550_SetBaud(STDOUT_BASEADDR, XPAR_XUARTNS550_CLOCK_HZ, UART_BAUD); - XUartNs550_SetLineControlReg(STDOUT_BASEADDR, XUN_LCR_8_DATA_BITS); -#endif - /* Bootrom/BSP configures PS7/PSU UART to 115200 bps */ -} - -void -init_platform() -{ - /* - * If you want to run this example outside of SDK, - * uncomment one of the following two lines and also #include "ps7_init.h" - * or #include "ps7_init.h" at the top, depending on the target. - * Make sure that the ps7/psu_init.c and ps7/psu_init.h files are included - * along with this example source files for compilation. - */ - /* ps7_init();*/ - /* psu_init();*/ - enable_caches(); - init_uart(); -} - -void -cleanup_platform() -{ - disable_caches(); -} diff --git a/quad/xsdk_workspace_vivado/recorder_test/src/platform.h b/quad/xsdk_workspace_vivado/recorder_test/src/platform.h deleted file mode 100644 index e273e3718..000000000 --- a/quad/xsdk_workspace_vivado/recorder_test/src/platform.h +++ /dev/null @@ -1,41 +0,0 @@ -/****************************************************************************** -* -* Copyright (C) 2008 - 2014 Xilinx, Inc. All rights reserved. -* -* Permission is hereby granted, free of charge, to any person obtaining a copy -* of this software and associated documentation files (the "Software"), to deal -* in the Software without restriction, including without limitation the rights -* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -* copies of the Software, and to permit persons to whom the Software is -* furnished to do so, subject to the following conditions: -* -* The above copyright notice and this permission notice shall be included in -* all copies or substantial portions of the Software. -* -* Use of the Software is limited solely to applications: -* (a) running on a Xilinx device, or -* (b) that interact with a Xilinx device through a bus or interconnect. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -* XILINX BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF -* OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -* SOFTWARE. -* -* Except as contained in this notice, the name of the Xilinx shall not be used -* in advertising or otherwise to promote the sale, use or other dealings in -* this Software without prior written authorization from Xilinx. -* -******************************************************************************/ - -#ifndef __PLATFORM_H_ -#define __PLATFORM_H_ - -#include "platform_config.h" - -void init_platform(); -void cleanup_platform(); - -#endif diff --git a/quad/xsdk_workspace_vivado/recorder_test/src/platform_config.h b/quad/xsdk_workspace_vivado/recorder_test/src/platform_config.h deleted file mode 100644 index eda2e2eba..000000000 --- a/quad/xsdk_workspace_vivado/recorder_test/src/platform_config.h +++ /dev/null @@ -1,6 +0,0 @@ -#ifndef __PLATFORM_CONFIG_H_ -#define __PLATFORM_CONFIG_H_ - -#define STDOUT_IS_PS7_UART -#define UART_DEVICE_ID 0 -#endif diff --git a/quad/xsdk_workspace_vivado/recorder_test_bsp/.cproject b/quad/xsdk_workspace_vivado/recorder_test_bsp/.cproject deleted file mode 100644 index 519033057..000000000 --- a/quad/xsdk_workspace_vivado/recorder_test_bsp/.cproject +++ /dev/null @@ -1,13 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage"> - <storageModule moduleId="org.eclipse.cdt.core.settings"> - <cconfiguration id="org.eclipse.cdt.core.default.config.37663476"> - <storageModule buildSystemId="org.eclipse.cdt.core.defaultConfigDataProvider" id="org.eclipse.cdt.core.default.config.37663476" moduleId="org.eclipse.cdt.core.settings" name="Configuration"> - <externalSettings/> - <extensions/> - </storageModule> - <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> - </cconfiguration> - </storageModule> - <storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/> -</cproject> diff --git a/quad/xsdk_workspace_vivado/recorder_test_bsp/.project b/quad/xsdk_workspace_vivado/recorder_test_bsp/.project deleted file mode 100644 index c0fd0d66b..000000000 --- a/quad/xsdk_workspace_vivado/recorder_test_bsp/.project +++ /dev/null @@ -1,75 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<projectDescription> - <name>recorder_test_bsp</name> - <comment>Created by SDK v2018.2</comment> - <projects> - </projects> - <buildSpec> - <buildCommand> - <name>org.eclipse.cdt.make.core.makeBuilder</name> - <arguments> - <dictionary> - <key>org.eclipse.cdt.core.errorOutputParser</key> - <value>org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GmakeErrorParser;org.eclipse.cdt.core.VCErrorParser;org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.MakeErrorParser;</value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.append_environment</key> - <value>true</value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.build.arguments</key> - <value></value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.build.command</key> - <value>make</value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.build.target.auto</key> - <value>all</value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.build.target.clean</key> - <value>clean</value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.build.target.inc</key> - <value>all</value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.enableAutoBuild</key> - <value>true</value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.enableCleanBuild</key> - <value>true</value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.enableFullBuild</key> - <value>true</value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.enabledIncrementalBuild</key> - <value>true</value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.environment</key> - <value></value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.stopOnError</key> - <value>false</value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key> - <value>true</value> - </dictionary> - </arguments> - </buildCommand> - </buildSpec> - <natures> - <nature>com.xilinx.sdk.sw.SwProjectNature</nature> - <nature>org.eclipse.cdt.core.cnature</nature> - <nature>org.eclipse.cdt.make.core.makeNature</nature> - </natures> -</projectDescription> diff --git a/quad/xsdk_workspace_vivado/recorder_test_bsp/.sdkproject b/quad/xsdk_workspace_vivado/recorder_test_bsp/.sdkproject deleted file mode 100644 index dd82e57dd..000000000 --- a/quad/xsdk_workspace_vivado/recorder_test_bsp/.sdkproject +++ /dev/null @@ -1,4 +0,0 @@ -THIRPARTY=false -HW_PROJECT_REFERENCE=design_1_wrapper_hw_platform_0 -PROCESSOR=ps7_cortexa9_0 -MSS_FILE=system.mss diff --git a/quad/xsdk_workspace_vivado/recorder_test_bsp/Makefile b/quad/xsdk_workspace_vivado/recorder_test_bsp/Makefile deleted file mode 100644 index 1e68922ca..000000000 --- a/quad/xsdk_workspace_vivado/recorder_test_bsp/Makefile +++ /dev/null @@ -1,35 +0,0 @@ -# Makefile generated by Xilinx. - -PROCESSOR = ps7_cortexa9_0 -LIBRARIES = ${PROCESSOR}/lib/libxil.a -BSP_MAKEFILES := $(wildcard $(PROCESSOR)/libsrc/*/src/Makefile) -SUBDIRS := $(patsubst %/Makefile, %, $(BSP_MAKEFILES)) - -ifneq (,$(findstring win,$(RDI_PLATFORM))) - SHELL = CMD -endif - -all: libs - @echo 'Finished building libraries' - -include: $(addsuffix /make.include,$(SUBDIRS)) - -libs: $(addsuffix /make.libs,$(SUBDIRS)) - -clean: $(addsuffix /make.clean,$(SUBDIRS)) - -$(PROCESSOR)/lib/libxil.a: $(PROCESSOR)/lib/libxil_init.a - cp -f $< $@ - -%/make.include: $(if $(wildcard $(PROCESSOR)/lib/libxil_init.a),$(PROCESSOR)/lib/libxil.a,) - @echo "Running Make include in $(subst /make.include,,$@)" - $(MAKE) -C $(subst /make.include,,$@) -s include "SHELL=$(SHELL)" "COMPILER=arm-none-eabi-gcc" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nostartfiles -g -Wall -Wextra" - -%/make.libs: include - @echo "Running Make libs in $(subst /make.libs,,$@)" - $(MAKE) -C $(subst /make.libs,,$@) -s libs "SHELL=$(SHELL)" "COMPILER=arm-none-eabi-gcc" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nostartfiles -g -Wall -Wextra" - -%/make.clean: - $(MAKE) -C $(subst /make.clean,,$@) -s clean -clean: - rm -f ${PROCESSOR}/lib/libxil.a diff --git a/quad/xsdk_workspace_vivado/recorder_test_bsp/system.mss b/quad/xsdk_workspace_vivado/recorder_test_bsp/system.mss deleted file mode 100644 index f51b5f562..000000000 --- a/quad/xsdk_workspace_vivado/recorder_test_bsp/system.mss +++ /dev/null @@ -1,249 +0,0 @@ - - PARAMETER VERSION = 2.2.0 - - -BEGIN OS - PARAMETER OS_NAME = standalone - PARAMETER OS_VER = 6.7 - PARAMETER PROC_INSTANCE = ps7_cortexa9_0 - PARAMETER stdin = ps7_uart_1 - PARAMETER stdout = ps7_uart_1 -END - - -BEGIN PROCESSOR - PARAMETER DRIVER_NAME = cpu_cortexa9 - PARAMETER DRIVER_VER = 2.6 - PARAMETER HW_INSTANCE = ps7_cortexa9_0 -END - - -BEGIN DRIVER - PARAMETER DRIVER_NAME = gpio - PARAMETER DRIVER_VER = 4.3 - PARAMETER HW_INSTANCE = axi_gpio_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = gpio - PARAMETER DRIVER_VER = 4.3 - PARAMETER HW_INSTANCE = axi_gpio_1 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = gpio - PARAMETER DRIVER_VER = 4.3 - PARAMETER HW_INSTANCE = axi_gpio_2 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = gpio - PARAMETER DRIVER_VER = 4.3 - PARAMETER HW_INSTANCE = axi_gpio_3 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_afi_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_afi_1 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_afi_2 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_afi_3 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = coresightps_dcc - PARAMETER DRIVER_VER = 1.4 - PARAMETER HW_INSTANCE = ps7_coresight_comp_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = ddrps - PARAMETER DRIVER_VER = 1.0 - PARAMETER HW_INSTANCE = ps7_ddr_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_ddrc_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = devcfg - PARAMETER DRIVER_VER = 3.5 - PARAMETER HW_INSTANCE = ps7_dev_cfg_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = dmaps - PARAMETER DRIVER_VER = 2.3 - PARAMETER HW_INSTANCE = ps7_dma_ns -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = dmaps - PARAMETER DRIVER_VER = 2.3 - PARAMETER HW_INSTANCE = ps7_dma_s -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = emacps - PARAMETER DRIVER_VER = 3.7 - PARAMETER HW_INSTANCE = ps7_ethernet_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_globaltimer_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = gpiops - PARAMETER DRIVER_VER = 3.3 - PARAMETER HW_INSTANCE = ps7_gpio_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_gpv_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_intc_dist_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_iop_bus_config_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_l2cachec_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_ocmc_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_pl310_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_pmu_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = qspips - PARAMETER DRIVER_VER = 3.4 - PARAMETER HW_INSTANCE = ps7_qspi_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_qspi_linear_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_ram_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_ram_1 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_scuc_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = scugic - PARAMETER DRIVER_VER = 3.9 - PARAMETER HW_INSTANCE = ps7_scugic_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = scutimer - PARAMETER DRIVER_VER = 2.1 - PARAMETER HW_INSTANCE = ps7_scutimer_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = scuwdt - PARAMETER DRIVER_VER = 2.1 - PARAMETER HW_INSTANCE = ps7_scuwdt_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = sdps - PARAMETER DRIVER_VER = 3.5 - PARAMETER HW_INSTANCE = ps7_sd_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_slcr_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = uartps - PARAMETER DRIVER_VER = 3.6 - PARAMETER HW_INSTANCE = ps7_uart_1 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = usbps - PARAMETER DRIVER_VER = 2.4 - PARAMETER HW_INSTANCE = ps7_usb_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = xadcps - PARAMETER DRIVER_VER = 2.2 - PARAMETER HW_INSTANCE = ps7_xadc_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = pwm_recorder - PARAMETER DRIVER_VER = 1.0 - PARAMETER HW_INSTANCE = pwm_recorder_0 -END - - diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/.cproject b/quad/xsdk_workspace_vivado/standalone_bsp_0/.cproject deleted file mode 100644 index 00ffbf876..000000000 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/.cproject +++ /dev/null @@ -1,13 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage"> - <storageModule moduleId="org.eclipse.cdt.core.settings"> - <cconfiguration id="org.eclipse.cdt.core.default.config.1030668811"> - <storageModule buildSystemId="org.eclipse.cdt.core.defaultConfigDataProvider" id="org.eclipse.cdt.core.default.config.1030668811" moduleId="org.eclipse.cdt.core.settings" name="Configuration"> - <externalSettings/> - <extensions/> - </storageModule> - <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> - </cconfiguration> - </storageModule> - <storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/> -</cproject> diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/.project b/quad/xsdk_workspace_vivado/standalone_bsp_0/.project deleted file mode 100644 index cf86d526d..000000000 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/.project +++ /dev/null @@ -1,75 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<projectDescription> - <name>standalone_bsp_0</name> - <comment>Created by SDK v2017.1</comment> - <projects> - </projects> - <buildSpec> - <buildCommand> - <name>org.eclipse.cdt.make.core.makeBuilder</name> - <arguments> - <dictionary> - <key>org.eclipse.cdt.core.errorOutputParser</key> - <value>org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GmakeErrorParser;org.eclipse.cdt.core.VCErrorParser;org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.MakeErrorParser;</value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.append_environment</key> - <value>true</value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.build.arguments</key> - <value></value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.build.command</key> - <value>make</value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.build.target.auto</key> - <value>all</value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.build.target.clean</key> - <value>clean</value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.build.target.inc</key> - <value>all</value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.enableAutoBuild</key> - <value>true</value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.enableCleanBuild</key> - <value>true</value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.enableFullBuild</key> - <value>true</value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.enabledIncrementalBuild</key> - <value>true</value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.environment</key> - <value></value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.stopOnError</key> - <value>false</value> - </dictionary> - <dictionary> - <key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key> - <value>true</value> - </dictionary> - </arguments> - </buildCommand> - </buildSpec> - <natures> - <nature>com.xilinx.sdk.sw.SwProjectNature</nature> - <nature>org.eclipse.cdt.core.cnature</nature> - <nature>org.eclipse.cdt.make.core.makeNature</nature> - </natures> -</projectDescription> diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/.sdkproject b/quad/xsdk_workspace_vivado/standalone_bsp_0/.sdkproject deleted file mode 100644 index 6e301ca60..000000000 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/.sdkproject +++ /dev/null @@ -1,4 +0,0 @@ -THIRPARTY=false -HW_PROJECT_REFERENCE=quad_wrapper_hw_platform_0 -PROCESSOR=ps7_cortexa9_0 -MSS_FILE=system.mss diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/Makefile b/quad/xsdk_workspace_vivado/standalone_bsp_0/Makefile deleted file mode 100644 index 1ace345f6..000000000 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/Makefile +++ /dev/null @@ -1,35 +0,0 @@ -# Makefile generated by Xilinx. - -PROCESSOR = ps7_cortexa9_0 -LIBRARIES = ${PROCESSOR}/lib/libxil.a -BSP_MAKEFILES := $(wildcard $(PROCESSOR)/libsrc/*/src/Makefile) -SUBDIRS := $(patsubst %/Makefile, %, $(BSP_MAKEFILES)) - -ifneq (,$(findstring win,$(RDI_PLATFORM))) - SHELL = CMD -endif - -all: libs - @echo 'Finished building libraries' - -include: $(addsuffix /make.include,$(SUBDIRS)) - -libs: $(addsuffix /make.libs,$(SUBDIRS)) - -clean: $(addsuffix /make.clean,$(SUBDIRS)) - -$(PROCESSOR)/lib/libxil.a: $(PROCESSOR)/lib/libxil_init.a - cp -f $< $@ - -%/make.include: $(if $(wildcard $(PROCESSOR)/lib/libxil_init.a),$(PROCESSOR)/lib/libxil.a,) - @echo "Running Make include in $(subst /make.include,,$@)" - $(MAKE) -C $(subst /make.include,,$@) -s include "SHELL=$(SHELL)" "COMPILER=arm-none-eabi-gcc" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nostartfiles -Wall -Wextra" - -%/make.libs: include - @echo "Running Make libs in $(subst /make.libs,,$@)" - $(MAKE) -C $(subst /make.libs,,$@) -s libs "SHELL=$(SHELL)" "COMPILER=arm-none-eabi-gcc" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nostartfiles -Wall -Wextra" - -%/make.clean: - $(MAKE) -C $(subst /make.clean,,$@) -s clean -clean: - rm -f ${PROCESSOR}/lib/libxil.a diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/sleep.h b/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/sleep.h deleted file mode 100644 index 27add6605..000000000 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/sleep.h +++ /dev/null @@ -1,50 +0,0 @@ -/****************************************************************************** -* -* Copyright (C) 2014 - 2016 Xilinx, Inc. All rights reserved. -* -* Permission is hereby granted, free of charge, to any person obtaining a copy -* of this software and associated documentation files (the "Software"), to deal -* in the Software without restriction, including without limitation the rights -* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -* copies of the Software, and to permit persons to whom the Software is -* furnished to do so, subject to the following conditions: -* -* The above copyright notice and this permission notice shall be included in -* all copies or substantial portions of the Software. -* -* Use of the Software is limited solely to applications: -* (a) running on a Xilinx device, or -* (b) that interact with a Xilinx device through a bus or interconnect. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -* XILINX BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF -* OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -* SOFTWARE. -* -* Except as contained in this notice, the name of the Xilinx shall not be used -* in advertising or otherwise to promote the sale, use or other dealings in -* this Software without prior written authorization from Xilinx. -* -******************************************************************************/ - -#ifndef SLEEP_H -#define SLEEP_H - -#include "xil_types.h" -#include "xil_io.h" - -#ifdef __cplusplus -extern "C" { -#endif - -int usleep(unsigned long useconds); -unsigned sleep(unsigned int seconds); - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xttcps.h b/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xttcps.h deleted file mode 100644 index bae9d28fe..000000000 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xttcps.h +++ /dev/null @@ -1,466 +0,0 @@ -/****************************************************************************** -* -* Copyright (C) 2010 - 2015 Xilinx, Inc. All rights reserved. -* -* Permission is hereby granted, free of charge, to any person obtaining a copy -* of this software and associated documentation files (the "Software"), to deal -* in the Software without restriction, including without limitation the rights -* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -* copies of the Software, and to permit persons to whom the Software is -* furnished to do so, subject to the following conditions: -* -* The above copyright notice and this permission notice shall be included in -* all copies or substantial portions of the Software. -* -* Use of the Software is limited solely to applications: -* (a) running on a Xilinx device, or -* (b) that interact with a Xilinx device through a bus or interconnect. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -* XILINX BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF -* OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -* SOFTWARE. -* -* Except as contained in this notice, the name of the Xilinx shall not be used -* in advertising or otherwise to promote the sale, use or other dealings in -* this Software without prior written authorization from Xilinx. -* -******************************************************************************/ -/*****************************************************************************/ -/** -* -* @file xttcps.h -* @addtogroup ttcps_v3_0 -* @{ -* @details -* -* This is the driver for one 16-bit timer counter in the Triple Timer Counter -* (TTC) module in the Ps block. -* -* The TTC module provides three independent timer/counter modules that can each -* be clocked using either the system clock (pclk) or an externally driven -* clock (ext_clk). In addition, each counter can independently prescale its -* selected clock input (divided by 2 to 65536). Counters can be set to -* decrement or increment. -* -* Each of the counters can be programmed to generate interrupt pulses: -* . At a regular, predefined period, that is on a timed interval -* . When the counter registers overflow -* . When the count matches any one of the three 'match' registers -* -* Therefore, up to six different events can trigger a timer interrupt: three -* match interrupts, an overflow interrupt, an interval interrupt and an event -* timer interrupt. Note that the overflow interrupt and the interval interrupt -* are mutually exclusive. -* -* <b>Initialization & Configuration</b> -* -* An XTtcPs_Config structure is used to configure a driver instance. -* Information in the XTtcPs_Config structure is the hardware properties -* about the device. -* -* A driver instance is initialized through -* XTtcPs_CfgInitialize(InstancePtr, CfgPtr, EffectiveAddr). Where CfgPtr -* is a pointer to the XTtcPs_Config structure, it can be looked up statically -* through XTtcPs_LookupConfig(DeviceID), or passed in by the caller. The -* EffectiveAddr can be the static base address of the device or virtual -* mapped address if address translation is supported. -* -* <b>Interrupts</b> -* -* Interrupt handler is not provided by the driver, as handling of interrupt -* is application specific. -* -* @note -* The default setting for a timer/counter is: -* - Overflow Mode -* - Internal clock (pclk) selected -* - Counter disabled -* - All Interrupts disabled -* - Output waveforms disabled -* -* <pre> -* MODIFICATION HISTORY: -* -* Ver Who Date Changes -* ----- ------ -------- ----------------------------------------------------- -* 1.00a drg/jz 01/20/10 First release.. -* 2.0 adk 12/10/13 Updated as per the New Tcl API's -* 3.0 pkp 12/09/14 Added support for Zynq Ultrascale Mp.Also code -* modified for MISRA-C:2012 compliance. -* 3.2 mus 10/28/16 Modified XTtcPs_GetCounterValue and XTtcPs_SetInterval -* macros to return 32 bit values for zynq ultrascale+mpsoc -* ms 01/23/17 Modified xil_printf statement in main function for all -* examples to ensure that "Successfully ran" and "Failed" -* strings are available in all examples. This is a fix -* for CR-965028. -* ms 03/17/17 Added readme.txt file in examples folder for doxygen -* generation. -* </pre> -* -******************************************************************************/ - -#ifndef XTTCPS_H /* prevent circular inclusions */ -#define XTTCPS_H /* by using protection macros */ - -#ifdef __cplusplus -extern "C" { -#endif - -/***************************** Include Files *********************************/ - -#include "xttcps_hw.h" -#include "xstatus.h" - -/************************** Constant Definitions *****************************/ -/* - * Flag for a9 processor - */ - #if !defined (ARMR5) && !defined (__aarch64__) && !defined (ARMA53_32) - #define ARMA9 - #endif - -/* - * Maximum Value for interval counter - */ - #if defined(ARMA9) - #define XTTCPS_MAX_INTERVAL_COUNT 0xFFFFU - #else - #define XTTCPS_MAX_INTERVAL_COUNT 0xFFFFFFFFU - #endif - -/** @name Configuration options - * - * Options for the device. Each of the options is bit field, so more than one - * options can be specified. - * - * @{ - */ -#define XTTCPS_OPTION_EXTERNAL_CLK 0x00000001U /**< External clock source */ -#define XTTCPS_OPTION_CLK_EDGE_NEG 0x00000002U /**< Clock on trailing edge for - external clock*/ -#define XTTCPS_OPTION_INTERVAL_MODE 0x00000004U /**< Interval mode */ -#define XTTCPS_OPTION_DECREMENT 0x00000008U /**< Decrement the counter */ -#define XTTCPS_OPTION_MATCH_MODE 0x00000010U /**< Match mode */ -#define XTTCPS_OPTION_WAVE_DISABLE 0x00000020U /**< No waveform output */ -#define XTTCPS_OPTION_WAVE_POLARITY 0x00000040U /**< Waveform polarity */ -/*@}*/ -/**************************** Type Definitions *******************************/ - -/** - * This typedef contains configuration information for the device. - */ -typedef struct { - u16 DeviceId; /**< Unique ID for device */ - u32 BaseAddress; /**< Base address for device */ - u32 InputClockHz; /**< Input clock frequency */ -} XTtcPs_Config; - -/** - * The XTtcPs driver instance data. The user is required to allocate a - * variable of this type for each PS timer/counter device in the system. A - * pointer to a variable of this type is then passed to various driver API - * functions. - */ -typedef struct { - XTtcPs_Config Config; /**< Configuration structure */ - u32 IsReady; /**< Device is initialized and ready */ -} XTtcPs; - -/** - * This typedef contains interval count - */ -#if defined(ARMA9) -typedef u16 XInterval; -#else -typedef u32 XInterval; -#endif -/***************** Macros (Inline Functions) Definitions *********************/ - -/* - * Internal helper macros - */ -#define InstReadReg(InstancePtr, RegOffset) \ - (Xil_In32(((InstancePtr)->Config.BaseAddress) + (u32)(RegOffset))) - -#define InstWriteReg(InstancePtr, RegOffset, Data) \ - (Xil_Out32(((InstancePtr)->Config.BaseAddress) + (u32)(RegOffset), (u32)(Data))) - -/*****************************************************************************/ -/** -* -* This function starts the counter/timer without resetting the counter value. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* -* @return None -* -* @note C-style signature: -* void XTtcPs_Start(XTtcPs *InstancePtr) -* -****************************************************************************/ -#define XTtcPs_Start(InstancePtr) \ - InstWriteReg((InstancePtr), XTTCPS_CNT_CNTRL_OFFSET, \ - (InstReadReg((InstancePtr), XTTCPS_CNT_CNTRL_OFFSET) & \ - ~XTTCPS_CNT_CNTRL_DIS_MASK)) - -/*****************************************************************************/ -/** -* -* This function stops the counter/timer. This macro may be called at any time -* to stop the counter. The counter holds the last value until it is reset, -* restarted or enabled. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* -* @return None -* -* @note C-style signature: -* void XTtcPs_Stop(XTtcPs *InstancePtr) -* -****************************************************************************/ -#define XTtcPs_Stop(InstancePtr) \ - InstWriteReg((InstancePtr), XTTCPS_CNT_CNTRL_OFFSET, \ - (InstReadReg((InstancePtr), XTTCPS_CNT_CNTRL_OFFSET) | \ - XTTCPS_CNT_CNTRL_DIS_MASK)) - -/*****************************************************************************/ -/** -* -* This function checks whether the timer counter has already started. -* -* @param InstancePtr is a pointer to the XTtcPs instance -* -* @return Non-zero if the device has started, '0' otherwise. -* -* @note C-style signature: -* int XTtcPs_IsStarted(XTtcPs *InstancePtr) -* -****************************************************************************/ -#define XTtcPs_IsStarted(InstancePtr) \ - ((InstReadReg((InstancePtr), XTTCPS_CNT_CNTRL_OFFSET) & \ - XTTCPS_CNT_CNTRL_DIS_MASK) == 0U) - -/*****************************************************************************/ -/** -* -* This function returns the current 16-bit counter value. It may be called at -* any time. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* -* @return zynq:16 bit counter value. -* zynq ultrascale+mpsoc:32 bit counter value. -* -* @note C-style signature: -* zynq: u16 XTtcPs_GetCounterValue(XTtcPs *InstancePtr) -* zynq ultrascale+mpsoc: u32 XTtcPs_GetCounterValue(XTtcPs *InstancePtr) -* -****************************************************************************/ -#if defined(ARMA9) -/* - * ttc supports 16 bit counter for zynq - */ -#define XTtcPs_GetCounterValue(InstancePtr) \ - (u16)InstReadReg((InstancePtr), XTTCPS_COUNT_VALUE_OFFSET) -#else -/* - * ttc supports 32 bit counter for zynq ultrascale+mpsoc - */ -#define XTtcPs_GetCounterValue(InstancePtr) \ - InstReadReg((InstancePtr), XTTCPS_COUNT_VALUE_OFFSET) -#endif - -/*****************************************************************************/ -/** -* -* This function sets the interval value to be used in interval mode. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* @param Value is the 16-bit value to be set in the interval register. -* -* @return None -* -* @note C-style signature: -* void XTtcPs_SetInterval(XTtcPs *InstancePtr, u16 Value) -* -****************************************************************************/ -#define XTtcPs_SetInterval(InstancePtr, Value) \ - InstWriteReg((InstancePtr), XTTCPS_INTERVAL_VAL_OFFSET, (Value)) - -/*****************************************************************************/ -/** -* -* This function gets the interval value from the interval register. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* -* @return zynq:16 bit interval value. -* zynq ultrascale+mpsoc:32 bit interval value. -* -* @note C-style signature: -* zynq: u16 XTtcPs_GetInterval(XTtcPs *InstancePtr) -* zynq ultrascale+mpsoc: u32 XTtcPs_GetInterval(XTtcPs *InstancePtr) -* -****************************************************************************/ -#if defined(ARMA9) -/* - * ttc supports 16 bit interval counter for zynq - */ -#define XTtcPs_GetInterval(InstancePtr) \ - (u16)InstReadReg((InstancePtr), XTTCPS_INTERVAL_VAL_OFFSET) -#else -/* - * ttc supports 32 bit interval counter for zynq ultrascale+mpsoc - */ -#define XTtcPs_GetInterval(InstancePtr) \ - InstReadReg((InstancePtr), XTTCPS_INTERVAL_VAL_OFFSET) -#endif -/*****************************************************************************/ -/** -* -* This macro resets the count register. It may be called at any time. The -* counter is reset to either 0 or 0xFFFF, or the interval value, depending on -* the increment/decrement mode. The state of the counter, as started or -* stopped, is not affected by calling reset. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* -* @return None -* -* @note C-style signature: -* void XTtcPs_ResetCounterValue(XTtcPs *InstancePtr) -* -****************************************************************************/ -#define XTtcPs_ResetCounterValue(InstancePtr) \ - InstWriteReg((InstancePtr), XTTCPS_CNT_CNTRL_OFFSET, \ - (InstReadReg((InstancePtr), XTTCPS_CNT_CNTRL_OFFSET) | \ - (u32)XTTCPS_CNT_CNTRL_RST_MASK)) - -/*****************************************************************************/ -/** -* -* This function enables the interrupts. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* @param InterruptMask defines which interrupt should be enabled. -* Constants are defined in xttcps_hw.h as XTTCPS_IXR_*. -* This is a bit mask, all set bits will be enabled, cleared bits -* will not be disabled. -* -* @return None. -* -* @note -* C-style signature: -* void XTtcPs_EnableInterrupts(XTtcPs *InstancePtr, u32 InterruptMask) -* -******************************************************************************/ -#define XTtcPs_EnableInterrupts(InstancePtr, InterruptMask) \ - InstWriteReg((InstancePtr), XTTCPS_IER_OFFSET, \ - (InstReadReg((InstancePtr), XTTCPS_IER_OFFSET) | \ - (InterruptMask))) - -/*****************************************************************************/ -/** -* -* This function disables the interrupts. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* @param InterruptMask defines which interrupt should be disabled. -* Constants are defined in xttcps_hw.h as XTTCPS_IXR_*. -* This is a bit mask, all set bits will be disabled, cleared bits -* will not be disabled. -* -* @return None. -* -* @note -* C-style signature: -* void XTtcPs_DisableInterrupts(XTtcPs *InstancePtr, u32 InterruptMask) -* -******************************************************************************/ -#define XTtcPs_DisableInterrupts(InstancePtr, InterruptMask) \ - InstWriteReg((InstancePtr), XTTCPS_IER_OFFSET, \ - (InstReadReg((InstancePtr), XTTCPS_IER_OFFSET) & \ - ~(InterruptMask))) - -/*****************************************************************************/ -/** -* -* This function reads the interrupt status. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* -* @return None. -* -* @note C-style signature: -* u32 XTtcPs_GetInterruptStatus(XTtcPs *InstancePtr) -* -******************************************************************************/ -#define XTtcPs_GetInterruptStatus(InstancePtr) \ - InstReadReg((InstancePtr), XTTCPS_ISR_OFFSET) - -/*****************************************************************************/ -/** -* -* This function clears the interrupt status. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* @param InterruptMask defines which interrupt should be cleared. -* Constants are defined in xttcps_hw.h as XTTCPS_IXR_*. -* This is a bit mask, all set bits will be cleared, cleared bits -* will not be cleared. -* -* @return None. -* -* @note -* C-style signature: -* void XTtcPs_ClearInterruptStatus(XTtcPs *InstancePtr, u32 InterruptMask) -* -******************************************************************************/ -#define XTtcPs_ClearInterruptStatus(InstancePtr, InterruptMask) \ - InstWriteReg((InstancePtr), XTTCPS_ISR_OFFSET, \ - (InterruptMask)) - - -/************************** Function Prototypes ******************************/ - -/* - * Initialization functions in xttcps_sinit.c - */ -XTtcPs_Config *XTtcPs_LookupConfig(u16 DeviceId); - -/* - * Required functions, in xttcps.c - */ -s32 XTtcPs_CfgInitialize(XTtcPs *InstancePtr, - XTtcPs_Config * ConfigPtr, u32 EffectiveAddr); - -void XTtcPs_SetMatchValue(XTtcPs *InstancePtr, u8 MatchIndex, u16 Value); -u16 XTtcPs_GetMatchValue(XTtcPs *InstancePtr, u8 MatchIndex); - -void XTtcPs_SetPrescaler(XTtcPs *InstancePtr, u8 PrescalerValue); -u8 XTtcPs_GetPrescaler(XTtcPs *InstancePtr); - -void XTtcPs_CalcIntervalFromFreq(XTtcPs *InstancePtr, u32 Freq, - XInterval *Interval, u8 *Prescaler); - -/* - * Functions for options, in file xttcps_options.c - */ -s32 XTtcPs_SetOptions(XTtcPs *InstancePtr, u32 Options); -u32 XTtcPs_GetOptions(XTtcPs *InstancePtr); - -/* - * Function for self-test, in file xttcps_selftest.c - */ -s32 XTtcPs_SelfTest(XTtcPs *InstancePtr); - -#ifdef __cplusplus -} -#endif - -#endif /* end of protection macro */ -/** @} */ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xttcps_hw.h b/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xttcps_hw.h deleted file mode 100644 index af78bcd67..000000000 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xttcps_hw.h +++ /dev/null @@ -1,212 +0,0 @@ -/****************************************************************************** -* -* Copyright (C) 2010 - 2015 Xilinx, Inc. All rights reserved. -* -* Permission is hereby granted, free of charge, to any person obtaining a copy -* of this software and associated documentation files (the "Software"), to deal -* in the Software without restriction, including without limitation the rights -* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -* copies of the Software, and to permit persons to whom the Software is -* furnished to do so, subject to the following conditions: -* -* The above copyright notice and this permission notice shall be included in -* all copies or substantial portions of the Software. -* -* Use of the Software is limited solely to applications: -* (a) running on a Xilinx device, or -* (b) that interact with a Xilinx device through a bus or interconnect. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -* XILINX BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF -* OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -* SOFTWARE. -* -* Except as contained in this notice, the name of the Xilinx shall not be used -* in advertising or otherwise to promote the sale, use or other dealings in -* this Software without prior written authorization from Xilinx. -* -******************************************************************************/ -/*****************************************************************************/ -/** -* -* @file xttcps_hw.h -* @addtogroup ttcps_v3_0 -* @{ -* -* This file defines the hardware interface to one of the three timer counters -* in the Ps block. -* -* -* <pre> -* MODIFICATION HISTORY: -* -* Ver Who Date Changes -* ----- ------ -------- ------------------------------------------------- -* 1.00a drg/jz 01/21/10 First release -* 3.00 kvn 02/13/15 Modified code for MISRA-C:2012 compliance. -* -* </pre> -* -******************************************************************************/ - -#ifndef XTTCPS_HW_H /* prevent circular inclusions */ -#define XTTCPS_HW_H /* by using protection macros */ - -#ifdef __cplusplus -extern "C" { -#endif - -/***************************** Include Files *********************************/ - -#include "xil_types.h" -#include "xil_assert.h" -#include "xil_io.h" - -/************************** Constant Definitions *****************************/ - -/** @name Register Map - * - * Register offsets from the base address of the device. - * - * @{ - */ -#define XTTCPS_CLK_CNTRL_OFFSET 0x00000000U /**< Clock Control Register */ -#define XTTCPS_CNT_CNTRL_OFFSET 0x0000000CU /**< Counter Control Register*/ -#define XTTCPS_COUNT_VALUE_OFFSET 0x00000018U /**< Current Counter Value */ -#define XTTCPS_INTERVAL_VAL_OFFSET 0x00000024U /**< Interval Count Value */ -#define XTTCPS_MATCH_0_OFFSET 0x00000030U /**< Match 1 value */ -#define XTTCPS_MATCH_1_OFFSET 0x0000003CU /**< Match 2 value */ -#define XTTCPS_MATCH_2_OFFSET 0x00000048U /**< Match 3 value */ -#define XTTCPS_ISR_OFFSET 0x00000054U /**< Interrupt Status Register */ -#define XTTCPS_IER_OFFSET 0x00000060U /**< Interrupt Enable Register */ -/* @} */ - -/** @name Clock Control Register - * Clock Control Register definitions - * @{ - */ -#define XTTCPS_CLK_CNTRL_PS_EN_MASK 0x00000001U /**< Prescale enable */ -#define XTTCPS_CLK_CNTRL_PS_VAL_MASK 0x0000001EU /**< Prescale value */ -#define XTTCPS_CLK_CNTRL_PS_VAL_SHIFT 1U /**< Prescale shift */ -#define XTTCPS_CLK_CNTRL_PS_DISABLE 16U /**< Prescale disable */ -#define XTTCPS_CLK_CNTRL_SRC_MASK 0x00000020U /**< Clock source */ -#define XTTCPS_CLK_CNTRL_EXT_EDGE_MASK 0x00000040U /**< External Clock edge */ -/* @} */ - -/** @name Counter Control Register - * Counter Control Register definitions - * @{ - */ -#define XTTCPS_CNT_CNTRL_DIS_MASK 0x00000001U /**< Disable the counter */ -#define XTTCPS_CNT_CNTRL_INT_MASK 0x00000002U /**< Interval mode */ -#define XTTCPS_CNT_CNTRL_DECR_MASK 0x00000004U /**< Decrement mode */ -#define XTTCPS_CNT_CNTRL_MATCH_MASK 0x00000008U /**< Match mode */ -#define XTTCPS_CNT_CNTRL_RST_MASK 0x00000010U /**< Reset counter */ -#define XTTCPS_CNT_CNTRL_EN_WAVE_MASK 0x00000020U /**< Enable waveform */ -#define XTTCPS_CNT_CNTRL_POL_WAVE_MASK 0x00000040U /**< Waveform polarity */ -#define XTTCPS_CNT_CNTRL_RESET_VALUE 0x00000021U /**< Reset value */ -/* @} */ - -/** @name Current Counter Value Register - * Current Counter Value Register definitions - * @{ - */ -#define XTTCPS_COUNT_VALUE_MASK 0x0000FFFFU /**< 16-bit counter value */ -/* @} */ - -/** @name Interval Value Register - * Interval Value Register is the maximum value the counter will count up or - * down to. - * @{ - */ -#define XTTCPS_INTERVAL_VAL_MASK 0x0000FFFFU /**< 16-bit Interval value*/ -/* @} */ - -/** @name Match Registers - * Definitions for Match registers, each timer counter has three match - * registers. - * @{ - */ -#define XTTCPS_MATCH_MASK 0x0000FFFFU /**< 16-bit Match value */ -#define XTTCPS_NUM_MATCH_REG 3U /**< Num of Match reg */ -/* @} */ - -/** @name Interrupt Registers - * Following register bit mask is for all interrupt registers. - * - * @{ - */ -#define XTTCPS_IXR_INTERVAL_MASK 0x00000001U /**< Interval Interrupt */ -#define XTTCPS_IXR_MATCH_0_MASK 0x00000002U /**< Match 1 Interrupt */ -#define XTTCPS_IXR_MATCH_1_MASK 0x00000004U /**< Match 2 Interrupt */ -#define XTTCPS_IXR_MATCH_2_MASK 0x00000008U /**< Match 3 Interrupt */ -#define XTTCPS_IXR_CNT_OVR_MASK 0x00000010U /**< Counter Overflow */ -#define XTTCPS_IXR_ALL_MASK 0x0000001FU /**< All valid Interrupts */ -/* @} */ - - -/***************** Macros (Inline Functions) Definitions *********************/ - -/****************************************************************************/ -/** -* -* Read the given Timer Counter register. -* -* @param BaseAddress is the base address of the timer counter device. -* @param RegOffset is the register offset to be read -* -* @return The 32-bit value of the register -* -* @note C-style signature: -* u32 XTtcPs_ReadReg(u32 BaseAddress, u32 RegOffset) -* -*****************************************************************************/ -#define XTtcPs_ReadReg(BaseAddress, RegOffset) \ - (Xil_In32((BaseAddress) + (u32)(RegOffset))) - -/****************************************************************************/ -/** -* -* Write the given Timer Counter register. -* -* @param BaseAddress is the base address of the timer counter device. -* @param RegOffset is the register offset to be written -* @param Data is the 32-bit value to write to the register -* -* @return None. -* -* @note C-style signature: -* void XTtcPs_WriteReg(XTtcPs BaseAddress, u32 RegOffset, -* u32 Data) -* -*****************************************************************************/ -#define XTtcPs_WriteReg(BaseAddress, RegOffset, Data) \ - (Xil_Out32((BaseAddress) + (u32)(RegOffset), (u32)(Data))) - -/****************************************************************************/ -/** -* -* Calculate a match register offset using the Match Register index. -* -* @param MatchIndex is the 0-2 value of the match register -* -* @return MATCH_N_OFFSET. -* -* @note C-style signature: -* u32 XTtcPs_Match_N_Offset(u8 MatchIndex) -* -*****************************************************************************/ -#define XTtcPs_Match_N_Offset(MatchIndex) \ - ((u32)XTTCPS_MATCH_0_OFFSET + ((u32)(12U) * (u32)(MatchIndex))) - -/************************** Function Prototypes ******************************/ - -/************************** Variable Definitions *****************************/ -#ifdef __cplusplus -} -#endif -#endif /* end of protection macro */ -/** @} */ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src/Makefile b/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src/Makefile deleted file mode 100644 index 68ad57aba..000000000 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src/Makefile +++ /dev/null @@ -1,26 +0,0 @@ -COMPILER= -ARCHIVER= -CP=cp -COMPILER_FLAGS= -EXTRA_COMPILER_FLAGS= -LIB=libxil.a - -RELEASEDIR=../../../lib -INCLUDEDIR=../../../include -INCLUDES=-I./. -I${INCLUDEDIR} - -INCLUDEFILES=*.h -LIBSOURCES=*.c -OUTS = *.o - -libs: - echo "Compiling pwm_recorder..." - $(COMPILER) $(COMPILER_FLAGS) $(EXTRA_COMPILER_FLAGS) $(INCLUDES) $(LIBSOURCES) - $(ARCHIVER) -r ${RELEASEDIR}/${LIB} ${OUTS} - make clean - -include: - ${CP} $(INCLUDEFILES) $(INCLUDEDIR) - -clean: - rm -rf ${OUTS} diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src/pwm_recorder.c b/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src/pwm_recorder.c deleted file mode 100644 index bed446fbf..000000000 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src/pwm_recorder.c +++ /dev/null @@ -1,6 +0,0 @@ - - -/***************************** Include Files *******************************/ -#include "pwm_recorder.h" - -/************************** Function Definitions ***************************/ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src/pwm_recorder.h b/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src/pwm_recorder.h deleted file mode 100644 index cedcc1e50..000000000 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src/pwm_recorder.h +++ /dev/null @@ -1,79 +0,0 @@ - -#ifndef PWM_RECORDER_H -#define PWM_RECORDER_H - - -/****************** Include Files ********************/ -#include "xil_types.h" -#include "xstatus.h" - -#define PWM_RECORDER_S_AXI_SLV_REG0_OFFSET 0 -#define PWM_RECORDER_S_AXI_SLV_REG1_OFFSET 4 -#define PWM_RECORDER_S_AXI_SLV_REG2_OFFSET 8 -#define PWM_RECORDER_S_AXI_SLV_REG3_OFFSET 12 - - -/**************************** Type Definitions *****************************/ -/** - * - * Write a value to a PWM_RECORDER register. A 32 bit write is performed. - * If the component is implemented in a smaller width, only the least - * significant data is written. - * - * @param BaseAddress is the base address of the PWM_RECORDERdevice. - * @param RegOffset is the register offset from the base to write to. - * @param Data is the data written to the register. - * - * @return None. - * - * @note - * C-style signature: - * void PWM_RECORDER_mWriteReg(u32 BaseAddress, unsigned RegOffset, u32 Data) - * - */ -#define PWM_RECORDER_mWriteReg(BaseAddress, RegOffset, Data) \ - Xil_Out32((BaseAddress) + (RegOffset), (u32)(Data)) - -/** - * - * Read a value from a PWM_RECORDER register. A 32 bit read is performed. - * If the component is implemented in a smaller width, only the least - * significant data is read from the register. The most significant data - * will be read as 0. - * - * @param BaseAddress is the base address of the PWM_RECORDER device. - * @param RegOffset is the register offset from the base to write to. - * - * @return Data is the data from the register. - * - * @note - * C-style signature: - * u32 PWM_RECORDER_mReadReg(u32 BaseAddress, unsigned RegOffset) - * - */ -#define PWM_RECORDER_mReadReg(BaseAddress, RegOffset) \ - Xil_In32((BaseAddress) + (RegOffset)) - -/************************** Function Prototypes ****************************/ -/** - * - * Run a self-test on the driver/device. Note this may be a destructive test if - * resets of the device are performed. - * - * If the hardware system is not built correctly, this function may never - * return to the caller. - * - * @param baseaddr_p is the base address of the PWM_RECORDER instance to be worked on. - * - * @return - * - * - XST_SUCCESS if all self-test code passed - * - XST_FAILURE if any self-test code failed - * - * @note Caching must be turned off for this function to work. - * @note Self test may fail if data memory and device are not on the same bus. - * - */ -XStatus PWM_RECORDER_Reg_SelfTest(void * baseaddr_p); - -#endif // PWM_RECORDER_H diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src/pwm_recorder_selftest.c b/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src/pwm_recorder_selftest.c deleted file mode 100644 index 8f6d89fba..000000000 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src/pwm_recorder_selftest.c +++ /dev/null @@ -1,60 +0,0 @@ - -/***************************** Include Files *******************************/ -#include "pwm_recorder.h" -#include "xparameters.h" -#include "stdio.h" -#include "xil_io.h" - -/************************** Constant Definitions ***************************/ -#define READ_WRITE_MUL_FACTOR 0x10 - -/************************** Function Definitions ***************************/ -/** - * - * Run a self-test on the driver/device. Note this may be a destructive test if - * resets of the device are performed. - * - * If the hardware system is not built correctly, this function may never - * return to the caller. - * - * @param baseaddr_p is the base address of the PWM_RECORDERinstance to be worked on. - * - * @return - * - * - XST_SUCCESS if all self-test code passed - * - XST_FAILURE if any self-test code failed - * - * @note Caching must be turned off for this function to work. - * @note Self test may fail if data memory and device are not on the same bus. - * - */ -XStatus PWM_RECORDER_Reg_SelfTest(void * baseaddr_p) -{ - u32 baseaddr; - int write_loop_index; - int read_loop_index; - int Index; - - baseaddr = (u32) baseaddr_p; - - xil_printf("******************************\n\r"); - xil_printf("* User Peripheral Self Test\n\r"); - xil_printf("******************************\n\n\r"); - - /* - * Write to user logic slave module register(s) and read back - */ - xil_printf("User logic slave module test...\n\r"); - - for (write_loop_index = 0 ; write_loop_index < 4; write_loop_index++) - PWM_RECORDER_mWriteReg (baseaddr, write_loop_index*4, (write_loop_index+1)*READ_WRITE_MUL_FACTOR); - for (read_loop_index = 0 ; read_loop_index < 4; read_loop_index++) - if ( PWM_RECORDER_mReadReg (baseaddr, read_loop_index*4) != (read_loop_index+1)*READ_WRITE_MUL_FACTOR){ - xil_printf ("Error reading register value at address %x\n", (int)baseaddr + read_loop_index*4); - return XST_FAILURE; - } - - xil_printf(" - slave register write/read passed\n\n\r"); - - return XST_SUCCESS; -} diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src/Makefile b/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src/Makefile deleted file mode 100644 index 30682bc09..000000000 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src/Makefile +++ /dev/null @@ -1,26 +0,0 @@ -COMPILER= -ARCHIVER= -CP=cp -COMPILER_FLAGS= -EXTRA_COMPILER_FLAGS= -LIB=libxil.a - -RELEASEDIR=../../../lib -INCLUDEDIR=../../../include -INCLUDES=-I./. -I${INCLUDEDIR} - -INCLUDEFILES=*.h -LIBSOURCES=*.c -OUTS = *.o - -libs: - echo "Compiling pwm_signal_out..." - $(COMPILER) $(COMPILER_FLAGS) $(EXTRA_COMPILER_FLAGS) $(INCLUDES) $(LIBSOURCES) - $(ARCHIVER) -r ${RELEASEDIR}/${LIB} ${OUTS} - make clean - -include: - ${CP} $(INCLUDEFILES) $(INCLUDEDIR) - -clean: - rm -rf ${OUTS} diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src/pwm_signal_out.c b/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src/pwm_signal_out.c deleted file mode 100644 index 5c5383eca..000000000 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src/pwm_signal_out.c +++ /dev/null @@ -1,6 +0,0 @@ - - -/***************************** Include Files *******************************/ -#include "pwm_signal_out.h" - -/************************** Function Definitions ***************************/ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src/pwm_signal_out.h b/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src/pwm_signal_out.h deleted file mode 100644 index 4a80786f6..000000000 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src/pwm_signal_out.h +++ /dev/null @@ -1,79 +0,0 @@ - -#ifndef PWM_SIGNAL_OUT_H -#define PWM_SIGNAL_OUT_H - - -/****************** Include Files ********************/ -#include "xil_types.h" -#include "xstatus.h" - -#define PWM_SIGNAL_OUT_S_AXI_SLV_REG0_OFFSET 0 -#define PWM_SIGNAL_OUT_S_AXI_SLV_REG1_OFFSET 4 -#define PWM_SIGNAL_OUT_S_AXI_SLV_REG2_OFFSET 8 -#define PWM_SIGNAL_OUT_S_AXI_SLV_REG3_OFFSET 12 - - -/**************************** Type Definitions *****************************/ -/** - * - * Write a value to a PWM_SIGNAL_OUT register. A 32 bit write is performed. - * If the component is implemented in a smaller width, only the least - * significant data is written. - * - * @param BaseAddress is the base address of the PWM_SIGNAL_OUTdevice. - * @param RegOffset is the register offset from the base to write to. - * @param Data is the data written to the register. - * - * @return None. - * - * @note - * C-style signature: - * void PWM_SIGNAL_OUT_mWriteReg(u32 BaseAddress, unsigned RegOffset, u32 Data) - * - */ -#define PWM_SIGNAL_OUT_mWriteReg(BaseAddress, RegOffset, Data) \ - Xil_Out32((BaseAddress) + (RegOffset), (u32)(Data)) - -/** - * - * Read a value from a PWM_SIGNAL_OUT register. A 32 bit read is performed. - * If the component is implemented in a smaller width, only the least - * significant data is read from the register. The most significant data - * will be read as 0. - * - * @param BaseAddress is the base address of the PWM_SIGNAL_OUT device. - * @param RegOffset is the register offset from the base to write to. - * - * @return Data is the data from the register. - * - * @note - * C-style signature: - * u32 PWM_SIGNAL_OUT_mReadReg(u32 BaseAddress, unsigned RegOffset) - * - */ -#define PWM_SIGNAL_OUT_mReadReg(BaseAddress, RegOffset) \ - Xil_In32((BaseAddress) + (RegOffset)) - -/************************** Function Prototypes ****************************/ -/** - * - * Run a self-test on the driver/device. Note this may be a destructive test if - * resets of the device are performed. - * - * If the hardware system is not built correctly, this function may never - * return to the caller. - * - * @param baseaddr_p is the base address of the PWM_SIGNAL_OUT instance to be worked on. - * - * @return - * - * - XST_SUCCESS if all self-test code passed - * - XST_FAILURE if any self-test code failed - * - * @note Caching must be turned off for this function to work. - * @note Self test may fail if data memory and device are not on the same bus. - * - */ -XStatus PWM_SIGNAL_OUT_Reg_SelfTest(void * baseaddr_p); - -#endif // PWM_SIGNAL_OUT_H diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src/pwm_signal_out_selftest.c b/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src/pwm_signal_out_selftest.c deleted file mode 100644 index f21e3dd81..000000000 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src/pwm_signal_out_selftest.c +++ /dev/null @@ -1,60 +0,0 @@ - -/***************************** Include Files *******************************/ -#include "pwm_signal_out.h" -#include "xparameters.h" -#include "stdio.h" -#include "xil_io.h" - -/************************** Constant Definitions ***************************/ -#define READ_WRITE_MUL_FACTOR 0x10 - -/************************** Function Definitions ***************************/ -/** - * - * Run a self-test on the driver/device. Note this may be a destructive test if - * resets of the device are performed. - * - * If the hardware system is not built correctly, this function may never - * return to the caller. - * - * @param baseaddr_p is the base address of the PWM_SIGNAL_OUTinstance to be worked on. - * - * @return - * - * - XST_SUCCESS if all self-test code passed - * - XST_FAILURE if any self-test code failed - * - * @note Caching must be turned off for this function to work. - * @note Self test may fail if data memory and device are not on the same bus. - * - */ -XStatus PWM_SIGNAL_OUT_Reg_SelfTest(void * baseaddr_p) -{ - u32 baseaddr; - int write_loop_index; - int read_loop_index; - int Index; - - baseaddr = (u32) baseaddr_p; - - xil_printf("******************************\n\r"); - xil_printf("* User Peripheral Self Test\n\r"); - xil_printf("******************************\n\n\r"); - - /* - * Write to user logic slave module register(s) and read back - */ - xil_printf("User logic slave module test...\n\r"); - - for (write_loop_index = 0 ; write_loop_index < 4; write_loop_index++) - PWM_SIGNAL_OUT_mWriteReg (baseaddr, write_loop_index*4, (write_loop_index+1)*READ_WRITE_MUL_FACTOR); - for (read_loop_index = 0 ; read_loop_index < 4; read_loop_index++) - if ( PWM_SIGNAL_OUT_mReadReg (baseaddr, read_loop_index*4) != (read_loop_index+1)*READ_WRITE_MUL_FACTOR){ - xil_printf ("Error reading register value at address %x\n", (int)baseaddr + read_loop_index*4); - return XST_FAILURE; - } - - xil_printf(" - slave register write/read passed\n\n\r"); - - return XST_SUCCESS; -} diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/sleep.h b/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/sleep.h deleted file mode 100644 index 27add6605..000000000 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/sleep.h +++ /dev/null @@ -1,50 +0,0 @@ -/****************************************************************************** -* -* Copyright (C) 2014 - 2016 Xilinx, Inc. All rights reserved. -* -* Permission is hereby granted, free of charge, to any person obtaining a copy -* of this software and associated documentation files (the "Software"), to deal -* in the Software without restriction, including without limitation the rights -* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -* copies of the Software, and to permit persons to whom the Software is -* furnished to do so, subject to the following conditions: -* -* The above copyright notice and this permission notice shall be included in -* all copies or substantial portions of the Software. -* -* Use of the Software is limited solely to applications: -* (a) running on a Xilinx device, or -* (b) that interact with a Xilinx device through a bus or interconnect. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -* XILINX BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF -* OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -* SOFTWARE. -* -* Except as contained in this notice, the name of the Xilinx shall not be used -* in advertising or otherwise to promote the sale, use or other dealings in -* this Software without prior written authorization from Xilinx. -* -******************************************************************************/ - -#ifndef SLEEP_H -#define SLEEP_H - -#include "xil_types.h" -#include "xil_io.h" - -#ifdef __cplusplus -extern "C" { -#endif - -int usleep(unsigned long useconds); -unsigned sleep(unsigned int seconds); - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/Makefile b/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/Makefile deleted file mode 100644 index 35c277dde..000000000 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/Makefile +++ /dev/null @@ -1,40 +0,0 @@ -COMPILER= -ARCHIVER= -CP=cp -COMPILER_FLAGS= -EXTRA_COMPILER_FLAGS= -LIB=libxil.a - -CC_FLAGS = $(COMPILER_FLAGS) -ECC_FLAGS = $(EXTRA_COMPILER_FLAGS) - -RELEASEDIR=../../../lib -INCLUDEDIR=../../../include -INCLUDES=-I./. -I${INCLUDEDIR} - -OUTS = *.o - -LIBSOURCES:=*.c -INCLUDEFILES:=*.h - -OBJECTS = $(addsuffix .o, $(basename $(wildcard *.c))) - -libs: banner ttcps_libs clean - -%.o: %.c - ${COMPILER} $(CC_FLAGS) $(ECC_FLAGS) $(INCLUDES) -o $@ $< - -banner: - echo "Compiling ttcps" - -ttcps_libs: ${OBJECTS} - $(ARCHIVER) -r ${RELEASEDIR}/${LIB} ${OBJECTS} - -.PHONY: include -include: ttcps_includes - -ttcps_includes: - ${CP} ${INCLUDEFILES} ${INCLUDEDIR} - -clean: - rm -rf ${OBJECTS} diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps.c b/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps.c deleted file mode 100644 index 394262868..000000000 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps.c +++ /dev/null @@ -1,443 +0,0 @@ -/****************************************************************************** -* -* Copyright (C) 2010 - 2015 Xilinx, Inc. All rights reserved. -* -* Permission is hereby granted, free of charge, to any person obtaining a copy -* of this software and associated documentation files (the "Software"), to deal -* in the Software without restriction, including without limitation the rights -* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -* copies of the Software, and to permit persons to whom the Software is -* furnished to do so, subject to the following conditions: -* -* The above copyright notice and this permission notice shall be included in -* all copies or substantial portions of the Software. -* -* Use of the Software is limited solely to applications: -* (a) running on a Xilinx device, or -* (b) that interact with a Xilinx device through a bus or interconnect. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -* XILINX BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF -* OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -* SOFTWARE. -* -* Except as contained in this notice, the name of the Xilinx shall not be used -* in advertising or otherwise to promote the sale, use or other dealings in -* this Software without prior written authorization from Xilinx. -* -******************************************************************************/ -/*****************************************************************************/ -/** -* -* @file xttcps.c -* @addtogroup ttcps_v3_0 -* @{ -* -* This file contains the implementation of the XTtcPs driver. This driver -* controls the operation of one timer counter in the Triple Timer Counter (TTC) -* module in the Ps block. Refer to xttcps.h for more detailed description -* of the driver. -* -* <pre> -* MODIFICATION HISTORY: -* -* Ver Who Date Changes -* ----- ------ -------- ------------------------------------------------- -* 1.00a drg/jz 01/21/10 First release -* 3.00 kvn 02/13/15 Modified code for MISRA-C:2012 compliance. -* 3.01 pkp 01/30/16 Modified XTtcPs_CfgInitialize to add XTtcps_Stop -* to stop the timer before configuring -* 3.2 mus 10/28/16 Modified XTtcPs_CalcIntervalFromFreq to calculate -* 32 bit interval count for zynq ultrascale+mpsoc -* -* </pre> -* -******************************************************************************/ - -/***************************** Include Files *********************************/ - -#include "xttcps.h" - -/************************** Constant Definitions *****************************/ - -/**************************** Type Definitions *******************************/ - -/***************** Macros (Inline Functions) Definitions *********************/ - -/************************** Function Prototypes ******************************/ - -/************************** Variable Definitions *****************************/ - - -/*****************************************************************************/ -/** -* -* Initializes a specific XTtcPs instance such that the driver is ready to use. -* This function initializes a single timer counter in the triple timer counter -* function block. -* -* The state of the device after initialization is: -* - Overflow Mode -* - Internal (pclk) selected -* - Counter disabled -* - All Interrupts disabled -* - Output waveforms disabled -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* @param ConfigPtr is a reference to a structure containing information -* about a specific TTC device. -* @param EffectiveAddr is the device base address in the virtual memory -* address space. The caller is responsible for keeping the address -* mapping from EffectiveAddr to the device physical base address -* unchanged once this function is invoked. Unexpected errors may -* occur if the address mapping changes after this function is -* called. If address translation is not used, then use -* ConfigPtr->BaseAddress for this parameter, passing the physical -* address instead. -* -* @return -* -* - XST_SUCCESS if the initialization is successful. -* - XST_DEVICE_IS_STARTED if the device is started. It must be -* stopped to re-initialize. -* -* @note Device has to be stopped first to call this function to -* initialize it. -* -******************************************************************************/ -s32 XTtcPs_CfgInitialize(XTtcPs *InstancePtr, XTtcPs_Config *ConfigPtr, - u32 EffectiveAddr) -{ - s32 Status; - u32 IsStartResult; - /* - * Assert to validate input arguments. - */ - Xil_AssertNonvoid(InstancePtr != NULL); - Xil_AssertNonvoid(ConfigPtr != NULL); - - /* - * Set some default values - */ - InstancePtr->Config.DeviceId = ConfigPtr->DeviceId; - InstancePtr->Config.BaseAddress = EffectiveAddr; - InstancePtr->Config.InputClockHz = ConfigPtr->InputClockHz; - - IsStartResult = XTtcPs_IsStarted(InstancePtr); - /* - * If the timer counter has already started, return an error - * Device should be stopped first. - */ - if(IsStartResult == (u32)TRUE) { - Status = XST_DEVICE_IS_STARTED; - } else { - - /* - * stop the timer before configuring - */ - XTtcPs_Stop(InstancePtr); - /* - * Reset the count control register to it's default value. - */ - XTtcPs_WriteReg(InstancePtr->Config.BaseAddress, - XTTCPS_CNT_CNTRL_OFFSET, - XTTCPS_CNT_CNTRL_RESET_VALUE); - - /* - * Reset the rest of the registers to the default values. - */ - XTtcPs_WriteReg(InstancePtr->Config.BaseAddress, - XTTCPS_CLK_CNTRL_OFFSET, 0x00U); - XTtcPs_WriteReg(InstancePtr->Config.BaseAddress, - XTTCPS_INTERVAL_VAL_OFFSET, 0x00U); - XTtcPs_WriteReg(InstancePtr->Config.BaseAddress, - XTTCPS_MATCH_1_OFFSET, 0x00U); - XTtcPs_WriteReg(InstancePtr->Config.BaseAddress, - XTTCPS_MATCH_2_OFFSET, 0x00U); - XTtcPs_WriteReg(InstancePtr->Config.BaseAddress, - XTTCPS_MATCH_2_OFFSET, 0x00U); - XTtcPs_WriteReg(InstancePtr->Config.BaseAddress, - XTTCPS_IER_OFFSET, 0x00U); - XTtcPs_WriteReg(InstancePtr->Config.BaseAddress, - XTTCPS_ISR_OFFSET, XTTCPS_IXR_ALL_MASK); - - InstancePtr->IsReady = XIL_COMPONENT_IS_READY; - - /* - * Reset the counter value - */ - XTtcPs_ResetCounterValue(InstancePtr); - Status = XST_SUCCESS; - } - return Status; -} - -/*****************************************************************************/ -/** -* -* This function is used to set the match registers. There are three match -* registers. -* -* The match 0 register is special. If the waveform output mode is enabled, the -* waveform will change polarity when the count matches the value in the match 0 -* register. The polarity of the waveform output can also be set using the -* XTtcPs_SetOptions() function. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* @param MatchIndex is the index to the match register to be set. -* Valid values are 0, 1, or 2. -* @param Value is the 16-bit value to be set in the match register. -* -* @return None -* -* @note None -* -****************************************************************************/ -void XTtcPs_SetMatchValue(XTtcPs *InstancePtr, u8 MatchIndex, u16 Value) -{ - /* - * Assert to validate input arguments. - */ - Xil_AssertVoid(InstancePtr != NULL); - Xil_AssertVoid(InstancePtr->IsReady == XIL_COMPONENT_IS_READY); - Xil_AssertVoid(MatchIndex < (u8)XTTCPS_NUM_MATCH_REG); - - /* - * Write the value to the correct match register with MatchIndex - */ - XTtcPs_WriteReg(InstancePtr->Config.BaseAddress, - XTtcPs_Match_N_Offset(MatchIndex), Value); -} - -/*****************************************************************************/ -/** -* -* This function is used to get the value of the match registers. There are -* three match registers. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* @param MatchIndex is the index to the match register to be set. -* Valid values are 0, 1, or 2. -* -* @return None -* -* @note None -* -****************************************************************************/ -u16 XTtcPs_GetMatchValue(XTtcPs *InstancePtr, u8 MatchIndex) -{ - u32 MatchReg; - - /* - * Assert to validate input arguments. - */ - Xil_AssertNonvoid(InstancePtr != NULL); - Xil_AssertNonvoid(InstancePtr->IsReady == XIL_COMPONENT_IS_READY); - Xil_AssertNonvoid(MatchIndex < XTTCPS_NUM_MATCH_REG); - - MatchReg = XTtcPs_ReadReg(InstancePtr->Config.BaseAddress, - XTtcPs_Match_N_Offset(MatchIndex)); - - return (u16) MatchReg; -} - -/*****************************************************************************/ -/** -* -* This function sets the prescaler enable bit and if needed sets the prescaler -* bits in the control register. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* @param PrescalerValue is a number from 0-16 that sets the prescaler -* to use. -* If the parameter is 0 - 15, use a prescaler on the clock of -* 2^(PrescalerValue+1), or 2-65536. -* If the parameter is XTTCPS_CLK_CNTRL_PS_DISABLE, do not use a -* prescaler. -* -* @return None -* -* @note None -* -****************************************************************************/ -void XTtcPs_SetPrescaler(XTtcPs *InstancePtr, u8 PrescalerValue) -{ - u32 ClockReg; - - /* - * Assert to validate input arguments. - */ - Xil_AssertVoid(InstancePtr != NULL); - Xil_AssertVoid(InstancePtr->IsReady == XIL_COMPONENT_IS_READY); - Xil_AssertVoid(PrescalerValue <= XTTCPS_CLK_CNTRL_PS_DISABLE); - - /* - * Read the clock control register - */ - ClockReg = XTtcPs_ReadReg(InstancePtr->Config.BaseAddress, - XTTCPS_CLK_CNTRL_OFFSET); - - /* - * Clear all of the prescaler control bits in the register - */ - ClockReg &= - ~(XTTCPS_CLK_CNTRL_PS_VAL_MASK | XTTCPS_CLK_CNTRL_PS_EN_MASK); - - if (PrescalerValue < XTTCPS_CLK_CNTRL_PS_DISABLE) { - /* - * Set the prescaler value and enable prescaler - */ - ClockReg |= (u32)(((u32)PrescalerValue << (u32)XTTCPS_CLK_CNTRL_PS_VAL_SHIFT) & - (u32)XTTCPS_CLK_CNTRL_PS_VAL_MASK); - ClockReg |= (u32)XTTCPS_CLK_CNTRL_PS_EN_MASK; - } - - /* - * Write the register with the new values. - */ - XTtcPs_WriteReg(InstancePtr->Config.BaseAddress, - XTTCPS_CLK_CNTRL_OFFSET, ClockReg); -} - -/*****************************************************************************/ -/** -* -* This function gets the input clock prescaler -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* -* <pre> -* @return The value(n) from which the prescalar value is calculated -* as 2^(n+1). Some example values are given below : -* -* Value Prescaler -* 0 2 -* 1 4 -* N 2^(n+1) -* 15 65536 -* 16 1 -* </pre> -* -* @note None. -* -****************************************************************************/ -u8 XTtcPs_GetPrescaler(XTtcPs *InstancePtr) -{ - u8 Status; - u32 ClockReg; - - /* - * Assert to validate input arguments. - */ - Xil_AssertNonvoid(InstancePtr != NULL); - Xil_AssertNonvoid(InstancePtr->IsReady == XIL_COMPONENT_IS_READY); - - /* - * Read the clock control register - */ - ClockReg = XTtcPs_ReadReg(InstancePtr->Config.BaseAddress, - XTTCPS_CLK_CNTRL_OFFSET); - - if (0 == (ClockReg & XTTCPS_CLK_CNTRL_PS_EN_MASK)) { - /* - * Prescaler is disabled. Return the correct flag value - */ - Status = (u8)XTTCPS_CLK_CNTRL_PS_DISABLE; - } - else { - - Status = (u8)((ClockReg & (u32)XTTCPS_CLK_CNTRL_PS_VAL_MASK) >> - (u32)XTTCPS_CLK_CNTRL_PS_VAL_SHIFT); - } - return Status; -} - -/*****************************************************************************/ -/** -* -* This function calculates the interval value as well as the prescaler value -* for a given frequency. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* @param Freq is the requested output frequency for the device. -* @param Interval is the interval value for the given frequency, -* it is the output value for this function. -* @param Prescaler is the prescaler value for the given frequency, -* it is the output value for this function. -* -* @return None. -* -* @note -* Upon successful calculation for the given frequency, Interval and Prescaler -* carry the settings for the timer counter; Upon unsuccessful calculation, -* Interval and Prescaler are set to 0xFF(FF) for their maximum values to -* signal the caller of failure. Therefore, caller needs to check the return -* interval or prescaler values for whether the function has succeeded. -* -****************************************************************************/ -void XTtcPs_CalcIntervalFromFreq(XTtcPs *InstancePtr, u32 Freq, - XInterval *Interval, u8 *Prescaler) -{ - u8 TmpPrescaler; - u32 TempValue; - u32 InputClock; - - InputClock = InstancePtr->Config.InputClockHz; - /* - * Find the smallest prescaler that will work for a given frequency. The - * smaller the prescaler, the larger the count and the more accurate the - * PWM setting. - */ - TempValue = InputClock/ Freq; - - if (TempValue < 4U) { - /* - * The frequency is too high, it is too close to the input - * clock value. Use maximum values to signal caller. - */ - *Interval = XTTCPS_MAX_INTERVAL_COUNT; - *Prescaler = 0xFFU; - return; - } - - /* - * First, do we need a prescaler or not? - */ - if (((u32)65536U) > TempValue) { - /* - * We do not need a prescaler, so set the values appropriately - */ - *Interval = (XInterval)TempValue; - *Prescaler = XTTCPS_CLK_CNTRL_PS_DISABLE; - return; - } - - - for (TmpPrescaler = 0U; TmpPrescaler < XTTCPS_CLK_CNTRL_PS_DISABLE; - TmpPrescaler++) { - TempValue = InputClock/ (Freq * (1U << (TmpPrescaler + 1U))); - - /* - * The first value less than 2^16 is the best bet - */ - if (((u32)65536U) > TempValue) { - /* - * Set the values appropriately - */ - *Interval = (XInterval)TempValue; - *Prescaler = TmpPrescaler; - return; - } - } - - /* Can not find interval values that work for the given frequency. - * Return maximum values to signal caller. - */ - *Interval = XTTCPS_MAX_INTERVAL_COUNT; - *Prescaler = 0XFFU; - return; -} -/** @} */ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps.h b/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps.h deleted file mode 100644 index bae9d28fe..000000000 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps.h +++ /dev/null @@ -1,466 +0,0 @@ -/****************************************************************************** -* -* Copyright (C) 2010 - 2015 Xilinx, Inc. All rights reserved. -* -* Permission is hereby granted, free of charge, to any person obtaining a copy -* of this software and associated documentation files (the "Software"), to deal -* in the Software without restriction, including without limitation the rights -* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -* copies of the Software, and to permit persons to whom the Software is -* furnished to do so, subject to the following conditions: -* -* The above copyright notice and this permission notice shall be included in -* all copies or substantial portions of the Software. -* -* Use of the Software is limited solely to applications: -* (a) running on a Xilinx device, or -* (b) that interact with a Xilinx device through a bus or interconnect. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -* XILINX BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF -* OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -* SOFTWARE. -* -* Except as contained in this notice, the name of the Xilinx shall not be used -* in advertising or otherwise to promote the sale, use or other dealings in -* this Software without prior written authorization from Xilinx. -* -******************************************************************************/ -/*****************************************************************************/ -/** -* -* @file xttcps.h -* @addtogroup ttcps_v3_0 -* @{ -* @details -* -* This is the driver for one 16-bit timer counter in the Triple Timer Counter -* (TTC) module in the Ps block. -* -* The TTC module provides three independent timer/counter modules that can each -* be clocked using either the system clock (pclk) or an externally driven -* clock (ext_clk). In addition, each counter can independently prescale its -* selected clock input (divided by 2 to 65536). Counters can be set to -* decrement or increment. -* -* Each of the counters can be programmed to generate interrupt pulses: -* . At a regular, predefined period, that is on a timed interval -* . When the counter registers overflow -* . When the count matches any one of the three 'match' registers -* -* Therefore, up to six different events can trigger a timer interrupt: three -* match interrupts, an overflow interrupt, an interval interrupt and an event -* timer interrupt. Note that the overflow interrupt and the interval interrupt -* are mutually exclusive. -* -* <b>Initialization & Configuration</b> -* -* An XTtcPs_Config structure is used to configure a driver instance. -* Information in the XTtcPs_Config structure is the hardware properties -* about the device. -* -* A driver instance is initialized through -* XTtcPs_CfgInitialize(InstancePtr, CfgPtr, EffectiveAddr). Where CfgPtr -* is a pointer to the XTtcPs_Config structure, it can be looked up statically -* through XTtcPs_LookupConfig(DeviceID), or passed in by the caller. The -* EffectiveAddr can be the static base address of the device or virtual -* mapped address if address translation is supported. -* -* <b>Interrupts</b> -* -* Interrupt handler is not provided by the driver, as handling of interrupt -* is application specific. -* -* @note -* The default setting for a timer/counter is: -* - Overflow Mode -* - Internal clock (pclk) selected -* - Counter disabled -* - All Interrupts disabled -* - Output waveforms disabled -* -* <pre> -* MODIFICATION HISTORY: -* -* Ver Who Date Changes -* ----- ------ -------- ----------------------------------------------------- -* 1.00a drg/jz 01/20/10 First release.. -* 2.0 adk 12/10/13 Updated as per the New Tcl API's -* 3.0 pkp 12/09/14 Added support for Zynq Ultrascale Mp.Also code -* modified for MISRA-C:2012 compliance. -* 3.2 mus 10/28/16 Modified XTtcPs_GetCounterValue and XTtcPs_SetInterval -* macros to return 32 bit values for zynq ultrascale+mpsoc -* ms 01/23/17 Modified xil_printf statement in main function for all -* examples to ensure that "Successfully ran" and "Failed" -* strings are available in all examples. This is a fix -* for CR-965028. -* ms 03/17/17 Added readme.txt file in examples folder for doxygen -* generation. -* </pre> -* -******************************************************************************/ - -#ifndef XTTCPS_H /* prevent circular inclusions */ -#define XTTCPS_H /* by using protection macros */ - -#ifdef __cplusplus -extern "C" { -#endif - -/***************************** Include Files *********************************/ - -#include "xttcps_hw.h" -#include "xstatus.h" - -/************************** Constant Definitions *****************************/ -/* - * Flag for a9 processor - */ - #if !defined (ARMR5) && !defined (__aarch64__) && !defined (ARMA53_32) - #define ARMA9 - #endif - -/* - * Maximum Value for interval counter - */ - #if defined(ARMA9) - #define XTTCPS_MAX_INTERVAL_COUNT 0xFFFFU - #else - #define XTTCPS_MAX_INTERVAL_COUNT 0xFFFFFFFFU - #endif - -/** @name Configuration options - * - * Options for the device. Each of the options is bit field, so more than one - * options can be specified. - * - * @{ - */ -#define XTTCPS_OPTION_EXTERNAL_CLK 0x00000001U /**< External clock source */ -#define XTTCPS_OPTION_CLK_EDGE_NEG 0x00000002U /**< Clock on trailing edge for - external clock*/ -#define XTTCPS_OPTION_INTERVAL_MODE 0x00000004U /**< Interval mode */ -#define XTTCPS_OPTION_DECREMENT 0x00000008U /**< Decrement the counter */ -#define XTTCPS_OPTION_MATCH_MODE 0x00000010U /**< Match mode */ -#define XTTCPS_OPTION_WAVE_DISABLE 0x00000020U /**< No waveform output */ -#define XTTCPS_OPTION_WAVE_POLARITY 0x00000040U /**< Waveform polarity */ -/*@}*/ -/**************************** Type Definitions *******************************/ - -/** - * This typedef contains configuration information for the device. - */ -typedef struct { - u16 DeviceId; /**< Unique ID for device */ - u32 BaseAddress; /**< Base address for device */ - u32 InputClockHz; /**< Input clock frequency */ -} XTtcPs_Config; - -/** - * The XTtcPs driver instance data. The user is required to allocate a - * variable of this type for each PS timer/counter device in the system. A - * pointer to a variable of this type is then passed to various driver API - * functions. - */ -typedef struct { - XTtcPs_Config Config; /**< Configuration structure */ - u32 IsReady; /**< Device is initialized and ready */ -} XTtcPs; - -/** - * This typedef contains interval count - */ -#if defined(ARMA9) -typedef u16 XInterval; -#else -typedef u32 XInterval; -#endif -/***************** Macros (Inline Functions) Definitions *********************/ - -/* - * Internal helper macros - */ -#define InstReadReg(InstancePtr, RegOffset) \ - (Xil_In32(((InstancePtr)->Config.BaseAddress) + (u32)(RegOffset))) - -#define InstWriteReg(InstancePtr, RegOffset, Data) \ - (Xil_Out32(((InstancePtr)->Config.BaseAddress) + (u32)(RegOffset), (u32)(Data))) - -/*****************************************************************************/ -/** -* -* This function starts the counter/timer without resetting the counter value. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* -* @return None -* -* @note C-style signature: -* void XTtcPs_Start(XTtcPs *InstancePtr) -* -****************************************************************************/ -#define XTtcPs_Start(InstancePtr) \ - InstWriteReg((InstancePtr), XTTCPS_CNT_CNTRL_OFFSET, \ - (InstReadReg((InstancePtr), XTTCPS_CNT_CNTRL_OFFSET) & \ - ~XTTCPS_CNT_CNTRL_DIS_MASK)) - -/*****************************************************************************/ -/** -* -* This function stops the counter/timer. This macro may be called at any time -* to stop the counter. The counter holds the last value until it is reset, -* restarted or enabled. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* -* @return None -* -* @note C-style signature: -* void XTtcPs_Stop(XTtcPs *InstancePtr) -* -****************************************************************************/ -#define XTtcPs_Stop(InstancePtr) \ - InstWriteReg((InstancePtr), XTTCPS_CNT_CNTRL_OFFSET, \ - (InstReadReg((InstancePtr), XTTCPS_CNT_CNTRL_OFFSET) | \ - XTTCPS_CNT_CNTRL_DIS_MASK)) - -/*****************************************************************************/ -/** -* -* This function checks whether the timer counter has already started. -* -* @param InstancePtr is a pointer to the XTtcPs instance -* -* @return Non-zero if the device has started, '0' otherwise. -* -* @note C-style signature: -* int XTtcPs_IsStarted(XTtcPs *InstancePtr) -* -****************************************************************************/ -#define XTtcPs_IsStarted(InstancePtr) \ - ((InstReadReg((InstancePtr), XTTCPS_CNT_CNTRL_OFFSET) & \ - XTTCPS_CNT_CNTRL_DIS_MASK) == 0U) - -/*****************************************************************************/ -/** -* -* This function returns the current 16-bit counter value. It may be called at -* any time. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* -* @return zynq:16 bit counter value. -* zynq ultrascale+mpsoc:32 bit counter value. -* -* @note C-style signature: -* zynq: u16 XTtcPs_GetCounterValue(XTtcPs *InstancePtr) -* zynq ultrascale+mpsoc: u32 XTtcPs_GetCounterValue(XTtcPs *InstancePtr) -* -****************************************************************************/ -#if defined(ARMA9) -/* - * ttc supports 16 bit counter for zynq - */ -#define XTtcPs_GetCounterValue(InstancePtr) \ - (u16)InstReadReg((InstancePtr), XTTCPS_COUNT_VALUE_OFFSET) -#else -/* - * ttc supports 32 bit counter for zynq ultrascale+mpsoc - */ -#define XTtcPs_GetCounterValue(InstancePtr) \ - InstReadReg((InstancePtr), XTTCPS_COUNT_VALUE_OFFSET) -#endif - -/*****************************************************************************/ -/** -* -* This function sets the interval value to be used in interval mode. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* @param Value is the 16-bit value to be set in the interval register. -* -* @return None -* -* @note C-style signature: -* void XTtcPs_SetInterval(XTtcPs *InstancePtr, u16 Value) -* -****************************************************************************/ -#define XTtcPs_SetInterval(InstancePtr, Value) \ - InstWriteReg((InstancePtr), XTTCPS_INTERVAL_VAL_OFFSET, (Value)) - -/*****************************************************************************/ -/** -* -* This function gets the interval value from the interval register. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* -* @return zynq:16 bit interval value. -* zynq ultrascale+mpsoc:32 bit interval value. -* -* @note C-style signature: -* zynq: u16 XTtcPs_GetInterval(XTtcPs *InstancePtr) -* zynq ultrascale+mpsoc: u32 XTtcPs_GetInterval(XTtcPs *InstancePtr) -* -****************************************************************************/ -#if defined(ARMA9) -/* - * ttc supports 16 bit interval counter for zynq - */ -#define XTtcPs_GetInterval(InstancePtr) \ - (u16)InstReadReg((InstancePtr), XTTCPS_INTERVAL_VAL_OFFSET) -#else -/* - * ttc supports 32 bit interval counter for zynq ultrascale+mpsoc - */ -#define XTtcPs_GetInterval(InstancePtr) \ - InstReadReg((InstancePtr), XTTCPS_INTERVAL_VAL_OFFSET) -#endif -/*****************************************************************************/ -/** -* -* This macro resets the count register. It may be called at any time. The -* counter is reset to either 0 or 0xFFFF, or the interval value, depending on -* the increment/decrement mode. The state of the counter, as started or -* stopped, is not affected by calling reset. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* -* @return None -* -* @note C-style signature: -* void XTtcPs_ResetCounterValue(XTtcPs *InstancePtr) -* -****************************************************************************/ -#define XTtcPs_ResetCounterValue(InstancePtr) \ - InstWriteReg((InstancePtr), XTTCPS_CNT_CNTRL_OFFSET, \ - (InstReadReg((InstancePtr), XTTCPS_CNT_CNTRL_OFFSET) | \ - (u32)XTTCPS_CNT_CNTRL_RST_MASK)) - -/*****************************************************************************/ -/** -* -* This function enables the interrupts. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* @param InterruptMask defines which interrupt should be enabled. -* Constants are defined in xttcps_hw.h as XTTCPS_IXR_*. -* This is a bit mask, all set bits will be enabled, cleared bits -* will not be disabled. -* -* @return None. -* -* @note -* C-style signature: -* void XTtcPs_EnableInterrupts(XTtcPs *InstancePtr, u32 InterruptMask) -* -******************************************************************************/ -#define XTtcPs_EnableInterrupts(InstancePtr, InterruptMask) \ - InstWriteReg((InstancePtr), XTTCPS_IER_OFFSET, \ - (InstReadReg((InstancePtr), XTTCPS_IER_OFFSET) | \ - (InterruptMask))) - -/*****************************************************************************/ -/** -* -* This function disables the interrupts. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* @param InterruptMask defines which interrupt should be disabled. -* Constants are defined in xttcps_hw.h as XTTCPS_IXR_*. -* This is a bit mask, all set bits will be disabled, cleared bits -* will not be disabled. -* -* @return None. -* -* @note -* C-style signature: -* void XTtcPs_DisableInterrupts(XTtcPs *InstancePtr, u32 InterruptMask) -* -******************************************************************************/ -#define XTtcPs_DisableInterrupts(InstancePtr, InterruptMask) \ - InstWriteReg((InstancePtr), XTTCPS_IER_OFFSET, \ - (InstReadReg((InstancePtr), XTTCPS_IER_OFFSET) & \ - ~(InterruptMask))) - -/*****************************************************************************/ -/** -* -* This function reads the interrupt status. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* -* @return None. -* -* @note C-style signature: -* u32 XTtcPs_GetInterruptStatus(XTtcPs *InstancePtr) -* -******************************************************************************/ -#define XTtcPs_GetInterruptStatus(InstancePtr) \ - InstReadReg((InstancePtr), XTTCPS_ISR_OFFSET) - -/*****************************************************************************/ -/** -* -* This function clears the interrupt status. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* @param InterruptMask defines which interrupt should be cleared. -* Constants are defined in xttcps_hw.h as XTTCPS_IXR_*. -* This is a bit mask, all set bits will be cleared, cleared bits -* will not be cleared. -* -* @return None. -* -* @note -* C-style signature: -* void XTtcPs_ClearInterruptStatus(XTtcPs *InstancePtr, u32 InterruptMask) -* -******************************************************************************/ -#define XTtcPs_ClearInterruptStatus(InstancePtr, InterruptMask) \ - InstWriteReg((InstancePtr), XTTCPS_ISR_OFFSET, \ - (InterruptMask)) - - -/************************** Function Prototypes ******************************/ - -/* - * Initialization functions in xttcps_sinit.c - */ -XTtcPs_Config *XTtcPs_LookupConfig(u16 DeviceId); - -/* - * Required functions, in xttcps.c - */ -s32 XTtcPs_CfgInitialize(XTtcPs *InstancePtr, - XTtcPs_Config * ConfigPtr, u32 EffectiveAddr); - -void XTtcPs_SetMatchValue(XTtcPs *InstancePtr, u8 MatchIndex, u16 Value); -u16 XTtcPs_GetMatchValue(XTtcPs *InstancePtr, u8 MatchIndex); - -void XTtcPs_SetPrescaler(XTtcPs *InstancePtr, u8 PrescalerValue); -u8 XTtcPs_GetPrescaler(XTtcPs *InstancePtr); - -void XTtcPs_CalcIntervalFromFreq(XTtcPs *InstancePtr, u32 Freq, - XInterval *Interval, u8 *Prescaler); - -/* - * Functions for options, in file xttcps_options.c - */ -s32 XTtcPs_SetOptions(XTtcPs *InstancePtr, u32 Options); -u32 XTtcPs_GetOptions(XTtcPs *InstancePtr); - -/* - * Function for self-test, in file xttcps_selftest.c - */ -s32 XTtcPs_SelfTest(XTtcPs *InstancePtr); - -#ifdef __cplusplus -} -#endif - -#endif /* end of protection macro */ -/** @} */ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps_g.c b/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps_g.c deleted file mode 100644 index 682ac8178..000000000 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps_g.c +++ /dev/null @@ -1,66 +0,0 @@ - -/******************************************************************* -* -* CAUTION: This file is automatically generated by HSI. -* Version: -* DO NOT EDIT. -* -* Copyright (C) 2010-2017 Xilinx, Inc. All Rights Reserved.* -*Permission is hereby granted, free of charge, to any person obtaining a copy -*of this software and associated documentation files (the Software), to deal -*in the Software without restriction, including without limitation the rights -*to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -*copies of the Software, and to permit persons to whom the Software is -*furnished to do so, subject to the following conditions: -* -*The above copyright notice and this permission notice shall be included in -*all copies or substantial portions of the Software. -* -* Use of the Software is limited solely to applications: -*(a) running on a Xilinx device, or -*(b) that interact with a Xilinx device through a bus or interconnect. -* -*THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -*IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -*FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -*XILINX BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -*WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT -*OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -* -*Except as contained in this notice, the name of the Xilinx shall not be used -*in advertising or otherwise to promote the sale, use or other dealings in -*this Software without prior written authorization from Xilinx. -* - -* -* Description: Driver configuration -* -*******************************************************************/ - -#include "xparameters.h" -#include "xttcps.h" - -/* -* The configuration table for devices -*/ - -XTtcPs_Config XTtcPs_ConfigTable[] = -{ - { - XPAR_PS7_TTC_0_DEVICE_ID, - XPAR_PS7_TTC_0_BASEADDR, - XPAR_PS7_TTC_0_TTC_CLK_FREQ_HZ - }, - { - XPAR_PS7_TTC_1_DEVICE_ID, - XPAR_PS7_TTC_1_BASEADDR, - XPAR_PS7_TTC_1_TTC_CLK_FREQ_HZ - }, - { - XPAR_PS7_TTC_2_DEVICE_ID, - XPAR_PS7_TTC_2_BASEADDR, - XPAR_PS7_TTC_2_TTC_CLK_FREQ_HZ - } -}; - - diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps_hw.h b/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps_hw.h deleted file mode 100644 index af78bcd67..000000000 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps_hw.h +++ /dev/null @@ -1,212 +0,0 @@ -/****************************************************************************** -* -* Copyright (C) 2010 - 2015 Xilinx, Inc. All rights reserved. -* -* Permission is hereby granted, free of charge, to any person obtaining a copy -* of this software and associated documentation files (the "Software"), to deal -* in the Software without restriction, including without limitation the rights -* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -* copies of the Software, and to permit persons to whom the Software is -* furnished to do so, subject to the following conditions: -* -* The above copyright notice and this permission notice shall be included in -* all copies or substantial portions of the Software. -* -* Use of the Software is limited solely to applications: -* (a) running on a Xilinx device, or -* (b) that interact with a Xilinx device through a bus or interconnect. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -* XILINX BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF -* OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -* SOFTWARE. -* -* Except as contained in this notice, the name of the Xilinx shall not be used -* in advertising or otherwise to promote the sale, use or other dealings in -* this Software without prior written authorization from Xilinx. -* -******************************************************************************/ -/*****************************************************************************/ -/** -* -* @file xttcps_hw.h -* @addtogroup ttcps_v3_0 -* @{ -* -* This file defines the hardware interface to one of the three timer counters -* in the Ps block. -* -* -* <pre> -* MODIFICATION HISTORY: -* -* Ver Who Date Changes -* ----- ------ -------- ------------------------------------------------- -* 1.00a drg/jz 01/21/10 First release -* 3.00 kvn 02/13/15 Modified code for MISRA-C:2012 compliance. -* -* </pre> -* -******************************************************************************/ - -#ifndef XTTCPS_HW_H /* prevent circular inclusions */ -#define XTTCPS_HW_H /* by using protection macros */ - -#ifdef __cplusplus -extern "C" { -#endif - -/***************************** Include Files *********************************/ - -#include "xil_types.h" -#include "xil_assert.h" -#include "xil_io.h" - -/************************** Constant Definitions *****************************/ - -/** @name Register Map - * - * Register offsets from the base address of the device. - * - * @{ - */ -#define XTTCPS_CLK_CNTRL_OFFSET 0x00000000U /**< Clock Control Register */ -#define XTTCPS_CNT_CNTRL_OFFSET 0x0000000CU /**< Counter Control Register*/ -#define XTTCPS_COUNT_VALUE_OFFSET 0x00000018U /**< Current Counter Value */ -#define XTTCPS_INTERVAL_VAL_OFFSET 0x00000024U /**< Interval Count Value */ -#define XTTCPS_MATCH_0_OFFSET 0x00000030U /**< Match 1 value */ -#define XTTCPS_MATCH_1_OFFSET 0x0000003CU /**< Match 2 value */ -#define XTTCPS_MATCH_2_OFFSET 0x00000048U /**< Match 3 value */ -#define XTTCPS_ISR_OFFSET 0x00000054U /**< Interrupt Status Register */ -#define XTTCPS_IER_OFFSET 0x00000060U /**< Interrupt Enable Register */ -/* @} */ - -/** @name Clock Control Register - * Clock Control Register definitions - * @{ - */ -#define XTTCPS_CLK_CNTRL_PS_EN_MASK 0x00000001U /**< Prescale enable */ -#define XTTCPS_CLK_CNTRL_PS_VAL_MASK 0x0000001EU /**< Prescale value */ -#define XTTCPS_CLK_CNTRL_PS_VAL_SHIFT 1U /**< Prescale shift */ -#define XTTCPS_CLK_CNTRL_PS_DISABLE 16U /**< Prescale disable */ -#define XTTCPS_CLK_CNTRL_SRC_MASK 0x00000020U /**< Clock source */ -#define XTTCPS_CLK_CNTRL_EXT_EDGE_MASK 0x00000040U /**< External Clock edge */ -/* @} */ - -/** @name Counter Control Register - * Counter Control Register definitions - * @{ - */ -#define XTTCPS_CNT_CNTRL_DIS_MASK 0x00000001U /**< Disable the counter */ -#define XTTCPS_CNT_CNTRL_INT_MASK 0x00000002U /**< Interval mode */ -#define XTTCPS_CNT_CNTRL_DECR_MASK 0x00000004U /**< Decrement mode */ -#define XTTCPS_CNT_CNTRL_MATCH_MASK 0x00000008U /**< Match mode */ -#define XTTCPS_CNT_CNTRL_RST_MASK 0x00000010U /**< Reset counter */ -#define XTTCPS_CNT_CNTRL_EN_WAVE_MASK 0x00000020U /**< Enable waveform */ -#define XTTCPS_CNT_CNTRL_POL_WAVE_MASK 0x00000040U /**< Waveform polarity */ -#define XTTCPS_CNT_CNTRL_RESET_VALUE 0x00000021U /**< Reset value */ -/* @} */ - -/** @name Current Counter Value Register - * Current Counter Value Register definitions - * @{ - */ -#define XTTCPS_COUNT_VALUE_MASK 0x0000FFFFU /**< 16-bit counter value */ -/* @} */ - -/** @name Interval Value Register - * Interval Value Register is the maximum value the counter will count up or - * down to. - * @{ - */ -#define XTTCPS_INTERVAL_VAL_MASK 0x0000FFFFU /**< 16-bit Interval value*/ -/* @} */ - -/** @name Match Registers - * Definitions for Match registers, each timer counter has three match - * registers. - * @{ - */ -#define XTTCPS_MATCH_MASK 0x0000FFFFU /**< 16-bit Match value */ -#define XTTCPS_NUM_MATCH_REG 3U /**< Num of Match reg */ -/* @} */ - -/** @name Interrupt Registers - * Following register bit mask is for all interrupt registers. - * - * @{ - */ -#define XTTCPS_IXR_INTERVAL_MASK 0x00000001U /**< Interval Interrupt */ -#define XTTCPS_IXR_MATCH_0_MASK 0x00000002U /**< Match 1 Interrupt */ -#define XTTCPS_IXR_MATCH_1_MASK 0x00000004U /**< Match 2 Interrupt */ -#define XTTCPS_IXR_MATCH_2_MASK 0x00000008U /**< Match 3 Interrupt */ -#define XTTCPS_IXR_CNT_OVR_MASK 0x00000010U /**< Counter Overflow */ -#define XTTCPS_IXR_ALL_MASK 0x0000001FU /**< All valid Interrupts */ -/* @} */ - - -/***************** Macros (Inline Functions) Definitions *********************/ - -/****************************************************************************/ -/** -* -* Read the given Timer Counter register. -* -* @param BaseAddress is the base address of the timer counter device. -* @param RegOffset is the register offset to be read -* -* @return The 32-bit value of the register -* -* @note C-style signature: -* u32 XTtcPs_ReadReg(u32 BaseAddress, u32 RegOffset) -* -*****************************************************************************/ -#define XTtcPs_ReadReg(BaseAddress, RegOffset) \ - (Xil_In32((BaseAddress) + (u32)(RegOffset))) - -/****************************************************************************/ -/** -* -* Write the given Timer Counter register. -* -* @param BaseAddress is the base address of the timer counter device. -* @param RegOffset is the register offset to be written -* @param Data is the 32-bit value to write to the register -* -* @return None. -* -* @note C-style signature: -* void XTtcPs_WriteReg(XTtcPs BaseAddress, u32 RegOffset, -* u32 Data) -* -*****************************************************************************/ -#define XTtcPs_WriteReg(BaseAddress, RegOffset, Data) \ - (Xil_Out32((BaseAddress) + (u32)(RegOffset), (u32)(Data))) - -/****************************************************************************/ -/** -* -* Calculate a match register offset using the Match Register index. -* -* @param MatchIndex is the 0-2 value of the match register -* -* @return MATCH_N_OFFSET. -* -* @note C-style signature: -* u32 XTtcPs_Match_N_Offset(u8 MatchIndex) -* -*****************************************************************************/ -#define XTtcPs_Match_N_Offset(MatchIndex) \ - ((u32)XTTCPS_MATCH_0_OFFSET + ((u32)(12U) * (u32)(MatchIndex))) - -/************************** Function Prototypes ******************************/ - -/************************** Variable Definitions *****************************/ -#ifdef __cplusplus -} -#endif -#endif /* end of protection macro */ -/** @} */ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps_options.c b/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps_options.c deleted file mode 100644 index 532b235c5..000000000 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps_options.c +++ /dev/null @@ -1,243 +0,0 @@ -/****************************************************************************** -* -* Copyright (C) 2010 - 2015 Xilinx, Inc. All rights reserved. -* -* Permission is hereby granted, free of charge, to any person obtaining a copy -* of this software and associated documentation files (the "Software"), to deal -* in the Software without restriction, including without limitation the rights -* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -* copies of the Software, and to permit persons to whom the Software is -* furnished to do so, subject to the following conditions: -* -* The above copyright notice and this permission notice shall be included in -* all copies or substantial portions of the Software. -* -* Use of the Software is limited solely to applications: -* (a) running on a Xilinx device, or -* (b) that interact with a Xilinx device through a bus or interconnect. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -* XILINX BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF -* OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -* SOFTWARE. -* -* Except as contained in this notice, the name of the Xilinx shall not be used -* in advertising or otherwise to promote the sale, use or other dealings in -* this Software without prior written authorization from Xilinx. -* -******************************************************************************/ -/*****************************************************************************/ -/** -* -* @file xttcps_options.c -* @addtogroup ttcps_v3_0 -* @{ -* -* This file contains functions to get or set option features for the device. -* -* <pre> -* MODIFICATION HISTORY: -* -* Ver Who Date Changes -* ----- ------ -------- --------------------------------------------- -* 1.00a drg/jz 01/21/10 First release -* 1.01a nm 03/05/2012 Removed break statement after return to remove -* compilation warnings. -* 3.00 kvn 02/13/15 Modified code for MISRA-C:2012 compliance. -* </pre> -* -******************************************************************************/ - -/***************************** Include Files *********************************/ - -#include "xttcps.h" - -/************************** Constant Definitions *****************************/ - - -/**************************** Type Definitions *******************************/ - - -/***************** Macros (Inline Functions) Definitions *********************/ - - -/************************** Function Prototypes ******************************/ - - -/************************** Variable Definitions *****************************/ - -/* - * Create the table of options which are processed to get/set the device - * options. These options are table driven to allow easy maintenance and - * expansion of the options. - */ -typedef struct { - u32 Option; - u32 Mask; - u32 Register; -} OptionsMap; - -static OptionsMap TmrCtrOptionsTable[] = { - {XTTCPS_OPTION_EXTERNAL_CLK, XTTCPS_CLK_CNTRL_SRC_MASK, - XTTCPS_CLK_CNTRL_OFFSET}, - {XTTCPS_OPTION_CLK_EDGE_NEG, XTTCPS_CLK_CNTRL_EXT_EDGE_MASK, - XTTCPS_CLK_CNTRL_OFFSET}, - {XTTCPS_OPTION_INTERVAL_MODE, XTTCPS_CNT_CNTRL_INT_MASK, - XTTCPS_CNT_CNTRL_OFFSET}, - {XTTCPS_OPTION_DECREMENT, XTTCPS_CNT_CNTRL_DECR_MASK, - XTTCPS_CNT_CNTRL_OFFSET}, - {XTTCPS_OPTION_MATCH_MODE, XTTCPS_CNT_CNTRL_MATCH_MASK, - XTTCPS_CNT_CNTRL_OFFSET}, - {XTTCPS_OPTION_WAVE_DISABLE, XTTCPS_CNT_CNTRL_EN_WAVE_MASK, - XTTCPS_CNT_CNTRL_OFFSET}, - {XTTCPS_OPTION_WAVE_POLARITY, XTTCPS_CNT_CNTRL_POL_WAVE_MASK, - XTTCPS_CNT_CNTRL_OFFSET}, -}; - -#define XTTCPS_NUM_TMRCTR_OPTIONS (sizeof(TmrCtrOptionsTable) / \ - sizeof(OptionsMap)) - -/*****************************************************************************/ -/** -* -* This function sets the options for the TTC device. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* @param Options contains the specified options to be set. This is a bit -* mask where a 1 means to turn the option on, and a 0 means to -* turn the option off. One or more bit values may be contained -* in the mask. See the bit definitions named XTTCPS_*_OPTION in -* the file xttcps.h. -* -* @return -* - XST_SUCCESS if options are successfully set. -* - XST_FAILURE if any of the options are unknown. -* -* @note None -* -******************************************************************************/ -s32 XTtcPs_SetOptions(XTtcPs *InstancePtr, u32 Options) -{ - u32 CountReg; - u32 ClockReg; - u32 Index; - s32 Status = XST_SUCCESS; - - Xil_AssertNonvoid(InstancePtr != NULL); - Xil_AssertNonvoid(InstancePtr->IsReady == XIL_COMPONENT_IS_READY); - - ClockReg = XTtcPs_ReadReg(InstancePtr->Config.BaseAddress, - XTTCPS_CLK_CNTRL_OFFSET); - CountReg = XTtcPs_ReadReg(InstancePtr->Config.BaseAddress, - XTTCPS_CNT_CNTRL_OFFSET); - - /* - * Loop through the options table, turning the option on or off - * depending on whether the bit is set in the incoming options flag. - */ - for (Index = 0U; Index < XTTCPS_NUM_TMRCTR_OPTIONS; Index++) { - if(Status != (s32)XST_FAILURE) { - if ((Options & TmrCtrOptionsTable[Index].Option) != (u32)0) { - - switch (TmrCtrOptionsTable[Index].Register) { - - case XTTCPS_CLK_CNTRL_OFFSET: - /* Add option */ - ClockReg |= TmrCtrOptionsTable[Index].Mask; - break; - - case XTTCPS_CNT_CNTRL_OFFSET: - /* Add option */ - CountReg |= TmrCtrOptionsTable[Index].Mask; - break; - - default: - Status = XST_FAILURE; - break; - } - } - else { - switch (TmrCtrOptionsTable[Index].Register) { - - case XTTCPS_CLK_CNTRL_OFFSET: - /* Remove option*/ - ClockReg &= ~TmrCtrOptionsTable[Index].Mask; - break; - - case XTTCPS_CNT_CNTRL_OFFSET: - /* Remove option*/ - CountReg &= ~TmrCtrOptionsTable[Index].Mask; - break; - - default: - Status = XST_FAILURE; - break; - } - } - } - } - - /* - * Now write the registers. Leave it to the upper layers to restart the - * device. - */ - if (Status != (s32)XST_FAILURE ) { - XTtcPs_WriteReg(InstancePtr->Config.BaseAddress, - XTTCPS_CLK_CNTRL_OFFSET, ClockReg); - XTtcPs_WriteReg(InstancePtr->Config.BaseAddress, - XTTCPS_CNT_CNTRL_OFFSET, CountReg); - } - - return Status; -} - -/*****************************************************************************/ -/** -* -* This function gets the settings for the options for the TTC device. -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* -* @return -* -* The return u32 contains the specified options that are set. This is a bit -* mask where a '1' means the option is on, and a'0' means the option is off. -* One or more bit values may be contained in the mask. See the bit definitions -* named XTTCPS_*_OPTION in the file xttcps.h. -* -* @note None. -* -******************************************************************************/ -u32 XTtcPs_GetOptions(XTtcPs *InstancePtr) -{ - u32 OptionsFlag = 0U; - u32 Register; - u32 Index; - - Xil_AssertNonvoid(InstancePtr != NULL); - Xil_AssertNonvoid(InstancePtr->IsReady == XIL_COMPONENT_IS_READY); - - - /* - * Loop through the options table to determine which options are set - */ - for (Index = 0U; Index < XTTCPS_NUM_TMRCTR_OPTIONS; Index++) { - /* - * Get the control register to determine which options are - * currently set. - */ - Register = XTtcPs_ReadReg(InstancePtr->Config.BaseAddress, - TmrCtrOptionsTable[Index]. - Register); - - if ((Register & TmrCtrOptionsTable[Index].Mask) != (u32)0) { - OptionsFlag |= TmrCtrOptionsTable[Index].Option; - } - } - - return OptionsFlag; -} -/** @} */ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps_selftest.c b/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps_selftest.c deleted file mode 100644 index 4923df667..000000000 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps_selftest.c +++ /dev/null @@ -1,109 +0,0 @@ -/****************************************************************************** -* -* Copyright (C) 2010 - 2015 Xilinx, Inc. All rights reserved. -* -* Permission is hereby granted, free of charge, to any person obtaining a copy -* of this software and associated documentation files (the "Software"), to deal -* in the Software without restriction, including without limitation the rights -* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -* copies of the Software, and to permit persons to whom the Software is -* furnished to do so, subject to the following conditions: -* -* The above copyright notice and this permission notice shall be included in -* all copies or substantial portions of the Software. -* -* Use of the Software is limited solely to applications: -* (a) running on a Xilinx device, or -* (b) that interact with a Xilinx device through a bus or interconnect. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -* XILINX BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF -* OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -* SOFTWARE. -* -* Except as contained in this notice, the name of the Xilinx shall not be used -* in advertising or otherwise to promote the sale, use or other dealings in -* this Software without prior written authorization from Xilinx. -* -******************************************************************************/ -/*****************************************************************************/ -/** -* -* @file xttcps_selftest.c -* @addtogroup ttcps_v3_0 -* @{ -* -* This file contains the implementation of self test function for the -* XTtcPs driver. -* -* <pre> -* MODIFICATION HISTORY: -* -* Ver Who Date Changes -* ----- ------ -------- --------------------------------------------- -* 1.00a drg/jz 01/21/10 First release -* 3.00 kvn 02/13/15 Modified code for MISRA-C:2012 compliance. -* </pre> -* -******************************************************************************/ - -/***************************** Include Files *********************************/ - -#include "xttcps.h" - -/************************** Constant Definitions *****************************/ - - -/**************************** Type Definitions *******************************/ - - -/***************** Macros (Inline Functions) Definitions *********************/ - - -/************************** Function Prototypes ******************************/ - - -/************************** Variable Definitions *****************************/ - - -/*****************************************************************************/ -/** -* -* Runs a self-test on the driver/device. -* -* -* @param InstancePtr is a pointer to the XTtcPs instance. -* -* @return -* -* - XST_SUCCESS if successful -* - XST_FAILURE indicates a register did not read or write correctly -* -* @note This test fails if it is not called right after initialization. -* -******************************************************************************/ -s32 XTtcPs_SelfTest(XTtcPs *InstancePtr) -{ - s32 Status; - u32 TempReg; - - Xil_AssertNonvoid(InstancePtr != NULL); - Xil_AssertNonvoid(InstancePtr->IsReady == XIL_COMPONENT_IS_READY); - - /* - * All the TTC registers should be in their default state right now. - */ - TempReg = XTtcPs_ReadReg(InstancePtr->Config.BaseAddress, - XTTCPS_CNT_CNTRL_OFFSET); - if (XTTCPS_CNT_CNTRL_RESET_VALUE != (u32)TempReg) { - Status = XST_FAILURE; - } - else { - Status = XST_SUCCESS; - } - return Status; -} -/** @} */ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/system.mss b/quad/xsdk_workspace_vivado/standalone_bsp_0/system.mss deleted file mode 100644 index 5f6ae5d99..000000000 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/system.mss +++ /dev/null @@ -1,315 +0,0 @@ - - PARAMETER VERSION = 2.2.0 - - -BEGIN OS - PARAMETER OS_NAME = standalone - PARAMETER OS_VER = 6.2 - PARAMETER PROC_INSTANCE = ps7_cortexa9_0 - PARAMETER stdin = ps7_uart_0 - PARAMETER stdout = ps7_uart_0 -END - - -BEGIN PROCESSOR - PARAMETER DRIVER_NAME = cpu_cortexa9 - PARAMETER DRIVER_VER = 2.4 - PARAMETER HW_INSTANCE = ps7_cortexa9_0 -END - - -BEGIN DRIVER - PARAMETER DRIVER_NAME = gpio - PARAMETER DRIVER_VER = 4.3 - PARAMETER HW_INSTANCE = axi_gpio_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = gpio - PARAMETER DRIVER_VER = 4.3 - PARAMETER HW_INSTANCE = axi_gpio_1 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_afi_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_afi_1 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_afi_2 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_afi_3 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = coresightps_dcc - PARAMETER DRIVER_VER = 1.4 - PARAMETER HW_INSTANCE = ps7_coresight_comp_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = ddrps - PARAMETER DRIVER_VER = 1.0 - PARAMETER HW_INSTANCE = ps7_ddr_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_ddrc_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = devcfg - PARAMETER DRIVER_VER = 3.4 - PARAMETER HW_INSTANCE = ps7_dev_cfg_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = dmaps - PARAMETER DRIVER_VER = 2.3 - PARAMETER HW_INSTANCE = ps7_dma_ns -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = dmaps - PARAMETER DRIVER_VER = 2.3 - PARAMETER HW_INSTANCE = ps7_dma_s -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = emacps - PARAMETER DRIVER_VER = 3.4 - PARAMETER HW_INSTANCE = ps7_ethernet_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_globaltimer_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = gpiops - PARAMETER DRIVER_VER = 3.2 - PARAMETER HW_INSTANCE = ps7_gpio_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_gpv_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = iicps - PARAMETER DRIVER_VER = 3.5 - PARAMETER HW_INSTANCE = ps7_i2c_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = iicps - PARAMETER DRIVER_VER = 3.5 - PARAMETER HW_INSTANCE = ps7_i2c_1 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_intc_dist_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_iop_bus_config_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_l2cachec_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_ocmc_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_pl310_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_pmu_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = qspips - PARAMETER DRIVER_VER = 3.3 - PARAMETER HW_INSTANCE = ps7_qspi_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_qspi_linear_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_ram_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_ram_1 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_scuc_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = scugic - PARAMETER DRIVER_VER = 3.6 - PARAMETER HW_INSTANCE = ps7_scugic_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = scutimer - PARAMETER DRIVER_VER = 2.1 - PARAMETER HW_INSTANCE = ps7_scutimer_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = scuwdt - PARAMETER DRIVER_VER = 2.1 - PARAMETER HW_INSTANCE = ps7_scuwdt_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = sdps - PARAMETER DRIVER_VER = 3.2 - PARAMETER HW_INSTANCE = ps7_sd_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = generic - PARAMETER DRIVER_VER = 2.0 - PARAMETER HW_INSTANCE = ps7_slcr_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = ttcps - PARAMETER DRIVER_VER = 3.3 - PARAMETER HW_INSTANCE = ps7_ttc_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = uartps - PARAMETER DRIVER_VER = 3.4 - PARAMETER HW_INSTANCE = ps7_uart_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = uartps - PARAMETER DRIVER_VER = 3.4 - PARAMETER HW_INSTANCE = ps7_uart_1 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = usbps - PARAMETER DRIVER_VER = 2.4 - PARAMETER HW_INSTANCE = ps7_usb_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = xadcps - PARAMETER DRIVER_VER = 2.2 - PARAMETER HW_INSTANCE = ps7_xadc_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = pwm_recorder - PARAMETER DRIVER_VER = 1.0 - PARAMETER HW_INSTANCE = pwm_recorder_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = pwm_recorder - PARAMETER DRIVER_VER = 1.0 - PARAMETER HW_INSTANCE = pwm_recorder_1 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = pwm_recorder - PARAMETER DRIVER_VER = 1.0 - PARAMETER HW_INSTANCE = pwm_recorder_2 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = pwm_recorder - PARAMETER DRIVER_VER = 1.0 - PARAMETER HW_INSTANCE = pwm_recorder_3 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = pwm_recorder - PARAMETER DRIVER_VER = 1.0 - PARAMETER HW_INSTANCE = pwm_recorder_4 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = pwm_recorder - PARAMETER DRIVER_VER = 1.0 - PARAMETER HW_INSTANCE = pwm_recorder_5 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = pwm_signal_out - PARAMETER DRIVER_VER = 1.0 - PARAMETER HW_INSTANCE = pwm_signal_out_0 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = pwm_signal_out - PARAMETER DRIVER_VER = 1.0 - PARAMETER HW_INSTANCE = pwm_signal_out_1 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = pwm_signal_out - PARAMETER DRIVER_VER = 1.0 - PARAMETER HW_INSTANCE = pwm_signal_out_2 -END - -BEGIN DRIVER - PARAMETER DRIVER_NAME = pwm_signal_out - PARAMETER DRIVER_VER = 1.0 - PARAMETER HW_INSTANCE = pwm_signal_out_3 -END - - diff --git a/quad/xsdk_workspace_vivado/system_bsp/.cproject b/quad/xsdk_workspace_vivado/system_bsp/.cproject index 040b9d963..42bf4a9ac 100644 --- a/quad/xsdk_workspace_vivado/system_bsp/.cproject +++ b/quad/xsdk_workspace_vivado/system_bsp/.cproject @@ -1,8 +1,8 @@ <?xml version="1.0" encoding="UTF-8" standalone="no"?> <?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage"> <storageModule moduleId="org.eclipse.cdt.core.settings"> - <cconfiguration id="org.eclipse.cdt.core.default.config.208777439"> - <storageModule buildSystemId="org.eclipse.cdt.core.defaultConfigDataProvider" id="org.eclipse.cdt.core.default.config.208777439" moduleId="org.eclipse.cdt.core.settings" name="Configuration"> + <cconfiguration id="org.eclipse.cdt.core.default.config.2090257826"> + <storageModule buildSystemId="org.eclipse.cdt.core.defaultConfigDataProvider" id="org.eclipse.cdt.core.default.config.2090257826" moduleId="org.eclipse.cdt.core.settings" name="Configuration"> <externalSettings/> <extensions/> </storageModule> @@ -10,6 +10,4 @@ </cconfiguration> </storageModule> <storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/> - <storageModule moduleId="refreshScope"/> - <storageModule moduleId="org.eclipse.cdt.core.pathentry"/> </cproject> diff --git a/quad/xsdk_workspace_vivado/system_bsp/.project b/quad/xsdk_workspace_vivado/system_bsp/.project index 0c80fba07..1773c9f5f 100644 --- a/quad/xsdk_workspace_vivado/system_bsp/.project +++ b/quad/xsdk_workspace_vivado/system_bsp/.project @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <projectDescription> <name>system_bsp</name> - <comment>Created by SDK v2017.1</comment> + <comment>Created by SDK v2018.2</comment> <projects> </projects> <buildSpec> diff --git a/quad/xsdk_workspace_vivado/system_bsp/.sdkproject b/quad/xsdk_workspace_vivado/system_bsp/.sdkproject index 6e301ca60..dd82e57dd 100644 --- a/quad/xsdk_workspace_vivado/system_bsp/.sdkproject +++ b/quad/xsdk_workspace_vivado/system_bsp/.sdkproject @@ -1,4 +1,4 @@ THIRPARTY=false -HW_PROJECT_REFERENCE=quad_wrapper_hw_platform_0 +HW_PROJECT_REFERENCE=design_1_wrapper_hw_platform_0 PROCESSOR=ps7_cortexa9_0 MSS_FILE=system.mss diff --git a/quad/xsdk_workspace_vivado/system_bsp/Makefile b/quad/xsdk_workspace_vivado/system_bsp/Makefile index 1ace345f6..1e68922ca 100644 --- a/quad/xsdk_workspace_vivado/system_bsp/Makefile +++ b/quad/xsdk_workspace_vivado/system_bsp/Makefile @@ -23,11 +23,11 @@ $(PROCESSOR)/lib/libxil.a: $(PROCESSOR)/lib/libxil_init.a %/make.include: $(if $(wildcard $(PROCESSOR)/lib/libxil_init.a),$(PROCESSOR)/lib/libxil.a,) @echo "Running Make include in $(subst /make.include,,$@)" - $(MAKE) -C $(subst /make.include,,$@) -s include "SHELL=$(SHELL)" "COMPILER=arm-none-eabi-gcc" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nostartfiles -Wall -Wextra" + $(MAKE) -C $(subst /make.include,,$@) -s include "SHELL=$(SHELL)" "COMPILER=arm-none-eabi-gcc" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nostartfiles -g -Wall -Wextra" %/make.libs: include @echo "Running Make libs in $(subst /make.libs,,$@)" - $(MAKE) -C $(subst /make.libs,,$@) -s libs "SHELL=$(SHELL)" "COMPILER=arm-none-eabi-gcc" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nostartfiles -Wall -Wextra" + $(MAKE) -C $(subst /make.libs,,$@) -s libs "SHELL=$(SHELL)" "COMPILER=arm-none-eabi-gcc" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nostartfiles -g -Wall -Wextra" %/make.clean: $(MAKE) -C $(subst /make.clean,,$@) -s clean diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/_profile_timer_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/_profile_timer_hw.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/_profile_timer_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/_profile_timer_hw.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/bspconfig.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/bspconfig.h similarity index 89% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/bspconfig.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/bspconfig.h index 87363749e..b977241ce 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/bspconfig.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/bspconfig.h @@ -5,7 +5,7 @@ * Version: * DO NOT EDIT. * -* Copyright (C) 2010-2017 Xilinx, Inc. All Rights Reserved.* +* Copyright (C) 2010-2018 Xilinx, Inc. All Rights Reserved.* *Permission is hereby granted, free of charge, to any person obtaining a copy *of this software and associated documentation files (the Software), to deal *in the Software without restriction, including without limitation the rights @@ -37,4 +37,9 @@ * *******************************************************************/ +#ifndef BSPCONFIG_H /* prevent circular inclusions */ +#define BSPCONFIG_H /* by using protection macros */ + #define MICROBLAZE_PVR_NONE + +#endif /*end of __BSPCONFIG_H_*/ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/mblaze_nt_types.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/mblaze_nt_types.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/mblaze_nt_types.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/mblaze_nt_types.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/profile.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/profile.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/profile.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/profile.h diff --git a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_recorder_v1_0/src/pwm_recorder.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/pwm_recorder.h similarity index 100% rename from quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_recorder_v1_0/src/pwm_recorder.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/pwm_recorder.h diff --git a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_signal_out_v1_0/src/pwm_signal_out.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/pwm_signal_out.h similarity index 100% rename from quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_signal_out_v1_0/src/pwm_signal_out.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/pwm_signal_out.h diff --git a/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/sleep.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/sleep.h new file mode 100644 index 000000000..f53b2d8c8 --- /dev/null +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/sleep.h @@ -0,0 +1,119 @@ +/****************************************************************************** +* +* Copyright (C) 2014 - 2017 Xilinx, Inc. All rights reserved. +* +* Permission is hereby granted, free of charge, to any person obtaining a copy +* of this software and associated documentation files (the "Software"), to deal +* in the Software without restriction, including without limitation the rights +* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +* copies of the Software, and to permit persons to whom the Software is +* furnished to do so, subject to the following conditions: +* +* The above copyright notice and this permission notice shall be included in +* all copies or substantial portions of the Software. +* +* Use of the Software is limited solely to applications: +* (a) running on a Xilinx device, or +* (b) that interact with a Xilinx device through a bus or interconnect. +* +* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL +* XILINX BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF +* OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +* SOFTWARE. +* +* Except as contained in this notice, the name of the Xilinx shall not be used +* in advertising or otherwise to promote the sale, use or other dealings in +* this Software without prior written authorization from Xilinx. +* +******************************************************************************/ + +/*****************************************************************************/ +/** +* @file sleep.h +* +* This header file contains ARM Cortex A53,A9,R5,Microblaze specific sleep +* related APIs. +* +* <pre> +* MODIFICATION HISTORY : +* +* Ver Who Date Changes +* ----- ---- -------- ------------------------------------------------------- +* 6.6 srm 11/02/17 Added processor specific sleep rountines +* function prototypes. +* +* </pre> +* +******************************************************************************/ + +#ifndef SLEEP_H +#define SLEEP_H + +#include "xil_types.h" +#include "xil_io.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/*****************************************************************************/ +/** +* +* This macro polls an address periodically until a condition is met or till the +* timeout occurs. +* The minimum timeout for calling this macro is 100us. If the timeout is less +* than 100us, it still waits for 100us. Also the unit for the timeout is 100us. +* If the timeout is not a multiple of 100us, it waits for a timeout of +* the next usec value which is a multiple of 100us. +* +* @param IO_func - accessor function to read the register contents. +* Depends on the register width. +* @param ADDR - Address to be polled +* @param VALUE - variable to read the value +* @param COND - Condition to checked (usually involves VALUE) +* @param TIMEOUT_US - timeout in micro seconds +* +* @return 0 - when the condition is met +* -1 - when the condition is not met till the timeout period +* +* @note none +* +*****************************************************************************/ +#define Xil_poll_timeout(IO_func, ADDR, VALUE, COND, TIMEOUT_US) \ + ( { \ + u64 timeout = TIMEOUT_US/100; \ + if(TIMEOUT_US%100!=0) \ + timeout++; \ + for(;;) { \ + VALUE = IO_func(ADDR); \ + if(COND) \ + break; \ + else { \ + usleep(100); \ + timeout--; \ + if(timeout==0) \ + break; \ + } \ + } \ + (timeout>0) ? 0 : -1; \ + } ) + +void usleep(unsigned long useconds); +void sleep(unsigned int seconds); +int usleep_R5(unsigned long useconds); +unsigned sleep_R5(unsigned int seconds); +int usleep_MB(unsigned long useconds); +unsigned sleep_MB(unsigned int seconds); +int usleep_A53(unsigned long useconds); +unsigned sleep_A53(unsigned int seconds); +int usleep_A9(unsigned long useconds); +unsigned sleep_A9(unsigned int seconds); + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/smc.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/smc.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/smc.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/smc.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/vectors.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/vectors.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/vectors.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/vectors.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xadcps.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xadcps.h index 9b6737d37..549bfff29 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xadcps.h @@ -176,7 +176,9 @@ * for CR-965028. * ms 03/17/17 Added readme.txt file in examples folder for doxygen * generation. -* +* ms 04/05/17 Modified Comment lines in functions of xadcps +* examples to recognize it as documentation block +* for doxygen generation. * * </pre> * diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xadcps_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xadcps_hw.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xadcps_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xadcps_hw.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xbasic_types.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xbasic_types.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xbasic_types.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xbasic_types.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/coresightps_dcc_v1_4/src/xcoresightpsdcc.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xcoresightpsdcc.h similarity index 98% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/coresightps_dcc_v1_4/src/xcoresightpsdcc.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xcoresightpsdcc.h index a732b235d..67959e327 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/coresightps_dcc_v1_4/src/xcoresightpsdcc.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xcoresightpsdcc.h @@ -33,7 +33,7 @@ /** * * @file xcoresightpsdcc.h -* @addtogroup coresightps_dcc_v1_1 +* @addtogroup coresightps_dcc_v1_4 * @{ * @details * diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_4/src/xcpu_cortexa9.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xcpu_cortexa9.h similarity index 86% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_4/src/xcpu_cortexa9.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xcpu_cortexa9.h index 4d441e53e..95c8ba536 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_4/src/xcpu_cortexa9.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xcpu_cortexa9.h @@ -33,11 +33,16 @@ /** * * @file xcpu_cortexa9.h -* @addtogroup cpu_cortexa9_v2_1 +* @addtogroup cpu_cortexa9_v2_5 * @{ * @details * * dummy file +* MODIFICATION HISTORY: * +* Ver Who Date Changes +* ----- ---- -------- --------------------------------------------------------- +* 2.5 ms 04/18/17 Modified tcl file to add suffix U for XPAR_CPU_ID +* parameter of cpu_cortexa9 in xparameters.h ******************************************************************************/ /** @} */ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ddrps_v1_0/src/xddrps.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xddrps.h similarity index 96% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ddrps_v1_0/src/xddrps.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xddrps.h index fe7adb066..c8804d2ed 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ddrps_v1_0/src/xddrps.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xddrps.h @@ -18,8 +18,8 @@ * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * XILINX CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * XILINX BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xdebug.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xdebug.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xdebug.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xdebug.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/xdevcfg.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xdevcfg.h similarity index 97% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/xdevcfg.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xdevcfg.h index 7fc1332a5..b9a0111d6 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/xdevcfg.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xdevcfg.h @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2010 - 2015 Xilinx, Inc. All rights reserved. +* Copyright (C) 2010 - 2017 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -33,7 +33,7 @@ /** * * @file xdevcfg.h -* @addtogroup devcfg_v3_3 +* @addtogroup devcfg_v3_5 * @{ * @details * @@ -154,7 +154,11 @@ * 3.3 sk 04/06/15 Modified XDcfg_ReadMultiBootConfig Macro CR# 851335. * ms 03/17/17 Added readme.txt file in examples folder for doxygen * generation. -* +* ms 04/10/17 Modified filename tag in interrupt and polled examples +* to include them in doxygen examples. +* 3.5 ms 04/18/17 Modified tcl file to add suffix U for all macros +* definitions of devcfg in xparameters.h +* ms 08/07/17 Fixed compilation warnings in xdevcfg_sinit.c * </pre> * ******************************************************************************/ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xdevcfg_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xdevcfg_hw.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xdevcfg_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xdevcfg_hw.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xdmaps.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xdmaps.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xdmaps.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xdmaps.h index e0a283600..5a0c1a28e 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xdmaps.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xdmaps.h @@ -33,7 +33,7 @@ /** * * @file xdmaps.h -* @addtogroup dmaps_v2_1 +* @addtogroup dmaps_v2_3 * @{ * @details * diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xdmaps_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xdmaps_hw.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xdmaps_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xdmaps_hw.h index 1186107ac..628f1ec4f 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xdmaps_hw.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xdmaps_hw.h @@ -33,7 +33,7 @@ /** * * @file xdmaps_hw.h -* @addtogroup dmaps_v2_1 +* @addtogroup dmaps_v2_3 * @{ * * This header file contains the hardware interface of an XDmaPs device. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xemacps.h similarity index 98% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xemacps.h index 1dbdbb20d..6d4b15b24 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xemacps.h @@ -33,7 +33,7 @@ /** * * @file xemacps.h -* @addtogroup emacps_v3_1 +* @addtogroup emacps_v3_7 * @{ * @details * @@ -322,6 +322,15 @@ * for CR-965028. * ms 03/17/17 Modified text file in examples folder for doxygen * generation. + * ms 04/05/17 Added tabspace for return statements in functions of + * xemacps_ieee1588_example.c for proper documentation + * while generating doxygen. + * 3.5 hk 08/14/17 Update cache coherency information of the interface in + * its config structure. + * 3.6 rb 09/08/17 HwCnt variable (in XEmacPs_BdRing structure) is + * changed to volatile. + * Add API XEmacPs_BdRingPtrReset() to reset pointers + * * </pre> * ****************************************************************************/ @@ -519,6 +528,8 @@ typedef void (*XEmacPs_ErrHandler) (void *CallBackRef, u8 Direction, typedef struct { u16 DeviceId; /**< Unique ID of device */ UINTPTR BaseAddress;/**< Physical base address of IPIF registers */ + u8 IsCacheCoherent; /**< Applicable only to A53 in EL1 mode; + * describes whether Cache Coherent or not */ } XEmacPs_Config; diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_bd.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xemacps_bd.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_bd.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xemacps_bd.h index 52c5f7e7e..83f9a87fc 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_bd.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xemacps_bd.h @@ -33,7 +33,7 @@ /** * * @file xemacps_bd.h -* @addtogroup emacps_v3_1 +* @addtogroup emacps_v3_7 * @{ * * This header provides operations to manage buffer descriptors in support diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_bdring.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xemacps_bdring.h similarity index 97% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_bdring.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xemacps_bdring.h index de78cf28f..b89e89885 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_bdring.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xemacps_bdring.h @@ -33,7 +33,7 @@ /** * * @file xemacps_bdring.h -* @addtogroup emacps_v3_1 +* @addtogroup emacps_v3_7 * @{ * * The Xiline EmacPs Buffer Descriptor ring driver. This is part of EmacPs @@ -47,6 +47,8 @@ * 1.00a wsy 01/10/10 First release * 2.1 srt 07/15/14 Add support for Zynq Ultrascale Mp architecture. * 3.0 kvn 02/13/15 Modified code for MISRA-C:2012 compliance. +* 3.6 rb 09/08/17 HwCnt variable (in XEmacPs_BdRing structure) is +* changed to volatile. * * </pre> * @@ -81,7 +83,7 @@ typedef struct { XEmacPs_Bd *BdaRestart; /**< BDA to load when channel is started */ - u32 HwCnt; /**< Number of BDs in work group */ + volatile u32 HwCnt; /**< Number of BDs in work group */ u32 PreCnt; /**< Number of BDs in pre-work group */ u32 FreeCnt; /**< Number of allocatable BDs in the free group */ u32 PostCnt; /**< Number of BDs in post-work group */ @@ -228,6 +230,7 @@ u32 XEmacPs_BdRingFromHwRx(XEmacPs_BdRing * RingPtr, u32 BdLimit, XEmacPs_Bd ** BdSetPtr); LONG XEmacPs_BdRingCheck(XEmacPs_BdRing * RingPtr, u8 Direction); +void XEmacPs_BdRingPtrReset(XEmacPs_BdRing * RingPtr, void *virtaddrloc); #ifdef __cplusplus } diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xemacps_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xemacps_hw.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xemacps_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xemacps_hw.h index 953cc6265..e535470c2 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xemacps_hw.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xemacps_hw.h @@ -33,7 +33,7 @@ /** * * @file xemacps_hw.h -* @addtogroup emacps_v3_1 +* @addtogroup emacps_v3_7 * @{ * * This header file contains identifiers and low-level driver functions (or diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xenv.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xenv.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xenv.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xenv.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xenv_standalone.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xenv_standalone.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xenv_standalone.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xenv_standalone.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xgpio.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xgpio.h index fc3f0bd33..582d94a76 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xgpio.h @@ -32,7 +32,7 @@ /*****************************************************************************/ /** * @file xgpio.h -* @addtogroup gpio_v4_2 +* @addtogroup gpio_v4_3 * @{ * @details * diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_l.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xgpio_l.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_l.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xgpio_l.h index 9c88aba2e..153fdfdf1 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_l.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xgpio_l.h @@ -33,7 +33,7 @@ /** * * @file xgpio_l.h -* @addtogroup gpio_v4_2 +* @addtogroup gpio_v4_3 * @{ * * This header file contains identifiers and driver functions (or diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/xgpiops.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xgpiops.h similarity index 95% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/xgpiops.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xgpiops.h index 367380656..fda562d91 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/xgpiops.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xgpiops.h @@ -1,3 +1,4 @@ + /****************************************************************************** * * Copyright (C) 2010 - 2015 Xilinx, Inc. All rights reserved. @@ -33,7 +34,7 @@ /** * * @file xgpiops.h -* @addtogroup gpiops_v3_1 +* @addtogroup gpiops_v3_3 * @{ * @details * @@ -99,7 +100,13 @@ * 3.1 kvn 04/13/15 Add support for Zynq Ultrascale+ MP. CR# 856980. * ms 03/17/17 Added readme.txt file in examples folder for doxygen * generation. -* +* ms 04/05/17 Added tabspace for return statements in functions of +* gpiops examples for proper documentation while +* generating doxygen. +* 3.3 ms 04/17/17 Added notes about gpio input and output pin description +* for zcu102 and zc702 boards in polled and interrupt +* example, configured Interrupt pin to input pin for +* proper functioning of interrupt example. * </pre> * ******************************************************************************/ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xgpiops_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xgpiops_hw.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xgpiops_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xgpiops_hw.h index 81e8d6a9f..ff0190675 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xgpiops_hw.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xgpiops_hw.h @@ -33,7 +33,7 @@ /** * * @file xgpiops_hw.h -* @addtogroup gpiops_v3_1 +* @addtogroup gpiops_v3_3 * @{ * * This header file contains the identifiers and basic driver functions (or diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xiicps.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xiicps.h similarity index 98% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xiicps.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xiicps.h index a7b956f64..d3713de47 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xiicps.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xiicps.h @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2010 - 2016 Xilinx, Inc. All rights reserved. +* Copyright (C) 2010 - 2018 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -33,7 +33,7 @@ /** * * @file xiicps.h -* @addtogroup iicps_v3_0 +* @addtogroup iicps_v3_7 * @{ * @details * @@ -186,6 +186,8 @@ * 3.3 kvn 05/05/16 Modified latest code for MISRA-C:2012 Compliance. * ms 03/17/17 Added readme.txt file in examples folder for doxygen * generation. +* 3.7 ask 04/17/18 Updated the Eeprom scanning mechanism +* as per the other examples (CR#997545) * * </pre> * diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xiicps_hw.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xiicps_hw.h index 3b00cf8b1..e9d63ec8f 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_hw.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xiicps_hw.h @@ -33,7 +33,7 @@ /** * * @file xiicps_hw.h -* @addtogroup iicps_v3_0 +* @addtogroup iicps_v3_7 * @{ * * This header file contains the hardware definition for an IIC device. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_assert.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_assert.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_assert.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_assert.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_cache.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_cache.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_cache.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_cache.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_cache_l.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_cache_l.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_cache_l.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_cache_l.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_cache_vxworks.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_cache_vxworks.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_cache_vxworks.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_cache_vxworks.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_errata.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_errata.h similarity index 96% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_errata.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_errata.h index 800fcd562..490aebeab 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_errata.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_errata.h @@ -52,6 +52,7 @@ * Ver Who Date Changes * ----- ---- -------- ----------------------------------------------- * 1.00a srt 04/18/13 First release +* 6.6 mus 12/07/17 Removed errata 753970, It fixes CR#989132. * </pre> * ******************************************************************************/ @@ -113,15 +114,10 @@ */ #define CONFIG_PL310_ERRATA_727915 1 -/** - * Errata No: 753970 - * Description: Cache sync operation may be faulty - */ -#define CONFIG_PL310_ERRATA_753970 1 /*@}*/ #endif /* ENABLE_ARM_ERRATA */ #endif /* XIL_ERRATA_H */ /** * @} End of "addtogroup a9_errata". -*/ \ No newline at end of file +*/ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_exception.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_exception.h similarity index 97% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_exception.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_exception.h index ad4822205..83303875d 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_exception.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_exception.h @@ -51,6 +51,8 @@ * ----- -------- -------- ----------------------------------------------- * 5.2 pkp 28/05/15 First release * 6.0 mus 27/07/16 Consolidated file for a53,a9 and r5 processors +* 6.7 mna 26/04/18 Add API Xil_GetExceptionRegisterHandler. +* 6.7 asa 18/05/18 Update signature of API Xil_GetExceptionRegisterHandler. * </pre> * ******************************************************************************/ @@ -235,6 +237,8 @@ extern void Xil_ExceptionRegisterHandler(u32 Exception_id, void *Data); extern void Xil_ExceptionRemoveHandler(u32 Exception_id); +extern void Xil_GetExceptionRegisterHandler(u32 Exception_id, + Xil_ExceptionHandler *Handler, void **Data); extern void Xil_ExceptionInit(void); #if defined (__aarch64__) @@ -253,4 +257,4 @@ extern void Xil_UndefinedExceptionHandler(void *CallBackRef); #endif /* XIL_EXCEPTION_H */ /** * @} End of "addtogroup arm_exception_apis". -*/ \ No newline at end of file +*/ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_hal.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_hal.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_hal.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_hal.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_io.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_io.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_io.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_io.h index 99bf4d05d..9c5aa43c7 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_io.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_io.h @@ -303,7 +303,7 @@ static INLINE u32 Xil_In32LE(UINTPTR Addr) static INLINE u32 Xil_In32BE(UINTPTR Addr) #endif { - u16 value = Xil_In32(Addr); + u32 value = Xil_In32(Addr); return Xil_EndianSwap32(value); } @@ -342,4 +342,4 @@ static INLINE void Xil_Out32BE(UINTPTR Addr, u32 Value) #endif /* end of protection macro */ /** * @} End of "addtogroup common_io_interfacing_apis". -*/ \ No newline at end of file +*/ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_macroback.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_macroback.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_macroback.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_macroback.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_mem.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_mem.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_mem.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_mem.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_misc_psreset_api.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_misc_psreset_api.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_misc_psreset_api.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_misc_psreset_api.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_mmu.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_mmu.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_mmu.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_mmu.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_printf.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_printf.h similarity index 91% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_printf.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_printf.h index 2be5c5734..016ae3b2f 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_printf.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_printf.h @@ -10,6 +10,10 @@ extern "C" { #include <stdarg.h> #include "xil_types.h" #include "xparameters.h" +#include "bspconfig.h" +#if HYP_GUEST && EL1_NONSECURE && XEN_USE_PV_CONSOLE +#include "xen_console.h" +#endif /*----------------------------------------------------*/ /* Use the following parameter passing structure to */ diff --git a/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_sleeptimer.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_sleeptimer.h new file mode 100644 index 000000000..4bfac0ac4 --- /dev/null +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_sleeptimer.h @@ -0,0 +1,116 @@ +/****************************************************************************** +* +* Copyright (C) 2017 Xilinx, Inc. All rights reserved. +* +* Permission is hereby granted, free of charge, to any person obtaining a copy +* of this software and associated documentation files (the "Software"), to deal +* in the Software without restriction, including without limitation the rights +* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +* copies of the Software, and to permit persons to whom the Software is +* furnished to do so, subject to the following conditions: +* +* The above copyright notice and this permission notice shall be included in +* all copies or substantial portions of the Software. +* +* Use of the Software is limited solely to applications: +* (a) running on a Xilinx device, or +* (b) that interact with a Xilinx device through a bus or interconnect. +* +* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL +* XILINX BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF +* OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +* SOFTWARE. +* +* Except as contained in this notice, the name of the Xilinx shall not be used +* in advertising or otherwise to promote the sale, use or other dealings in +* this Software without prior written authorization from Xilinx. +* +******************************************************************************/ +/*****************************************************************************/ +/** +* +* @file xil_sleeptimer.h +* +* This header file contains ARM Cortex A53,A9,R5 specific sleep related APIs. +* For sleep related functions that can be used across all Xilinx supported +* processors, please use xil_sleeptimer.h. +* +* +* <pre> +* MODIFICATION HISTORY : +* +* Ver Who Date Changes +* ----- ---- -------- ------------------------------------------------------- +* 6.6 srm 10/18/17 First Release. +* +* </pre> +*****************************************************************************/ + +#ifndef XIL_SLEEPTIMER_H /* prevent circular inclusions */ +#define XIL_SLEEPTIMER_H /* by using protection macros */ +/**************************** Include Files ********************************/ + +#include "xil_io.h" +#include "xparameters.h" +#include "bspconfig.h" + +/************************** Constant Definitions *****************************/ + +#if defined (ARMR5) || (__aarch64__) || (ARMA53_32) +#define XSLEEP_TIMER_REG_SHIFT 32U +#define XSleep_ReadCounterVal Xil_In32 +#define XCntrVal u32 +#else +#define XSLEEP_TIMER_REG_SHIFT 16U +#define XSleep_ReadCounterVal Xil_In16 +#define XCntrVal u16 +#endif + +#if defined(ARMR5) || (defined (__aarch64__) && EL3==1) || defined (ARMA53_32) +#define RST_LPD_IOU2 0xFF5E0238U +#define RST_LPD_IOU2_TTC_BASE_RESET_MASK 0x00000800U +#endif + +#if defined (SLEEP_TIMER_BASEADDR) +/** @name Register Map +* +* Register offsets from the base address of the TTC device +* +* @{ +*/ + #define XSLEEP_TIMER_TTC_CLK_CNTRL_OFFSET 0x00000000U + /**< Clock Control Register */ + #define XSLEEP_TIMER_TTC_CNT_CNTRL_OFFSET 0x0000000CU + /**< Counter Control Register*/ + #define XSLEEP_TIMER_TTC_COUNT_VALUE_OFFSET 0x00000018U + /**< Current Counter Value */ +/* @} */ +/** @name Clock Control Register +* Clock Control Register definitions of TTC +* @{ +*/ + #define XSLEEP_TIMER_TTC_CLK_CNTRL_PS_EN_MASK 0x00000001U + /**< Prescale enable */ +/* @} */ +/** @name Counter Control Register +* Counter Control Register definitions of TTC +* @{ +*/ +#define XSLEEP_TIMER_TTC_CNT_CNTRL_DIS_MASK 0x00000001U + /**< Disable the counter */ +#define XSLEEP_TIMER_TTC_CNT_CNTRL_RST_MASK 0x00000010U + /**< Reset counter */ +/* @} */ + +/**************************** Type Definitions *******************************/ + +/************************** Function Prototypes ******************************/ + +void Xil_SleepTTCCommon(u32 delay, u64 frequency); +void XTime_StartTTCTimer(); + +#endif +#endif /* XIL_SLEEPTIMER_H */ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_testcache.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_testcache.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_testcache.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_testcache.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_testio.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_testio.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_testio.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_testio.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_testmem.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_testmem.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_testmem.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_testmem.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_types.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_types.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_types.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xil_types.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xl2cc.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xl2cc.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xl2cc.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xl2cc.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xl2cc_counter.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xl2cc_counter.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xl2cc_counter.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xl2cc_counter.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xparameters.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xparameters.h similarity index 81% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xparameters.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xparameters.h index 85419e8c5..6599c095d 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xparameters.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xparameters.h @@ -2,16 +2,16 @@ #define XPARAMETERS_H /* by using protection macros */ /* Definition for CPU ID */ -#define XPAR_CPU_ID 0 +#define XPAR_CPU_ID 0U /* Definitions for peripheral PS7_CORTEXA9_0 */ -#define XPAR_PS7_CORTEXA9_0_CPU_CLK_FREQ_HZ 650000000 +#define XPAR_PS7_CORTEXA9_0_CPU_CLK_FREQ_HZ 666666687 /******************************************************************/ /* Canonical definitions for peripheral PS7_CORTEXA9_0 */ -#define XPAR_CPU_CORTEXA9_0_CPU_CLK_FREQ_HZ 650000000 +#define XPAR_CPU_CORTEXA9_0_CPU_CLK_FREQ_HZ 666666687 /******************************************************************/ @@ -23,29 +23,37 @@ /******************************************************************/ +/* Platform specific definitions */ +#define PLATFORM_ZYNQ + +/* Definitions for sleep timer configuration */ +#define XSLEEP_TIMER_IS_DEFAULT_TIMER + + +/******************************************************************/ /* Definitions for peripheral PS7_DDR_0 */ #define XPAR_PS7_DDR_0_S_AXI_BASEADDR 0x00100000 -#define XPAR_PS7_DDR_0_S_AXI_HIGHADDR 0x1FFFFFFF +#define XPAR_PS7_DDR_0_S_AXI_HIGHADDR 0x3FFFFFFF /******************************************************************/ /* Definitions for driver DEVCFG */ -#define XPAR_XDCFG_NUM_INSTANCES 1 +#define XPAR_XDCFG_NUM_INSTANCES 1U /* Definitions for peripheral PS7_DEV_CFG_0 */ -#define XPAR_PS7_DEV_CFG_0_DEVICE_ID 0 -#define XPAR_PS7_DEV_CFG_0_BASEADDR 0xF8007000 -#define XPAR_PS7_DEV_CFG_0_HIGHADDR 0xF80070FF +#define XPAR_PS7_DEV_CFG_0_DEVICE_ID 0U +#define XPAR_PS7_DEV_CFG_0_BASEADDR 0xF8007000U +#define XPAR_PS7_DEV_CFG_0_HIGHADDR 0xF80070FFU /******************************************************************/ /* Canonical definitions for peripheral PS7_DEV_CFG_0 */ #define XPAR_XDCFG_0_DEVICE_ID XPAR_PS7_DEV_CFG_0_DEVICE_ID -#define XPAR_XDCFG_0_BASEADDR 0xF8007000 -#define XPAR_XDCFG_0_HIGHADDR 0xF80070FF +#define XPAR_XDCFG_0_BASEADDR 0xF8007000U +#define XPAR_XDCFG_0_HIGHADDR 0xF80070FFU /******************************************************************/ @@ -94,10 +102,12 @@ #define XPAR_PS7_ETHERNET_0_ENET_SLCR_100MBPS_DIV1 5 #define XPAR_PS7_ETHERNET_0_ENET_SLCR_10MBPS_DIV0 8 #define XPAR_PS7_ETHERNET_0_ENET_SLCR_10MBPS_DIV1 50 +#define XPAR_PS7_ETHERNET_0_ENET_TSU_CLK_FREQ_HZ 0 /******************************************************************/ +#define XPAR_PS7_ETHERNET_0_IS_CACHE_COHERENT 0 /* Canonical definitions for peripheral PS7_ETHERNET_0 */ #define XPAR_XEMACPS_0_DEVICE_ID XPAR_PS7_ETHERNET_0_DEVICE_ID #define XPAR_XEMACPS_0_BASEADDR 0xE000B000 @@ -109,6 +119,7 @@ #define XPAR_XEMACPS_0_ENET_SLCR_100Mbps_DIV1 5 #define XPAR_XEMACPS_0_ENET_SLCR_10Mbps_DIV0 8 #define XPAR_XEMACPS_0_ENET_SLCR_10Mbps_DIV1 50 +#define XPAR_XEMACPS_0_ENET_TSU_CLK_FREQ_HZ 0 /******************************************************************/ @@ -209,14 +220,14 @@ /******************************************************************/ /* Definitions for driver GPIO */ -#define XPAR_XGPIO_NUM_INSTANCES 2 +#define XPAR_XGPIO_NUM_INSTANCES 4 /* Definitions for peripheral AXI_GPIO_0 */ #define XPAR_AXI_GPIO_0_BASEADDR 0x41200000 #define XPAR_AXI_GPIO_0_HIGHADDR 0x4120FFFF #define XPAR_AXI_GPIO_0_DEVICE_ID 0 #define XPAR_AXI_GPIO_0_INTERRUPT_PRESENT 0 -#define XPAR_AXI_GPIO_0_IS_DUAL 1 +#define XPAR_AXI_GPIO_0_IS_DUAL 0 /* Definitions for peripheral AXI_GPIO_1 */ @@ -227,6 +238,22 @@ #define XPAR_AXI_GPIO_1_IS_DUAL 0 +/* Definitions for peripheral AXI_GPIO_2 */ +#define XPAR_AXI_GPIO_2_BASEADDR 0x41220000 +#define XPAR_AXI_GPIO_2_HIGHADDR 0x4122FFFF +#define XPAR_AXI_GPIO_2_DEVICE_ID 2 +#define XPAR_AXI_GPIO_2_INTERRUPT_PRESENT 0 +#define XPAR_AXI_GPIO_2_IS_DUAL 0 + + +/* Definitions for peripheral AXI_GPIO_3 */ +#define XPAR_AXI_GPIO_3_BASEADDR 0x41230000 +#define XPAR_AXI_GPIO_3_HIGHADDR 0x4123FFFF +#define XPAR_AXI_GPIO_3_DEVICE_ID 3 +#define XPAR_AXI_GPIO_3_INTERRUPT_PRESENT 0 +#define XPAR_AXI_GPIO_3_IS_DUAL 0 + + /******************************************************************/ /* Canonical definitions for peripheral AXI_GPIO_0 */ @@ -234,7 +261,7 @@ #define XPAR_GPIO_0_HIGHADDR 0x4120FFFF #define XPAR_GPIO_0_DEVICE_ID XPAR_AXI_GPIO_0_DEVICE_ID #define XPAR_GPIO_0_INTERRUPT_PRESENT 0 -#define XPAR_GPIO_0_IS_DUAL 1 +#define XPAR_GPIO_0_IS_DUAL 0 /* Canonical definitions for peripheral AXI_GPIO_1 */ #define XPAR_GPIO_1_BASEADDR 0x41210000 @@ -243,6 +270,20 @@ #define XPAR_GPIO_1_INTERRUPT_PRESENT 0 #define XPAR_GPIO_1_IS_DUAL 0 +/* Canonical definitions for peripheral AXI_GPIO_2 */ +#define XPAR_GPIO_2_BASEADDR 0x41220000 +#define XPAR_GPIO_2_HIGHADDR 0x4122FFFF +#define XPAR_GPIO_2_DEVICE_ID XPAR_AXI_GPIO_2_DEVICE_ID +#define XPAR_GPIO_2_INTERRUPT_PRESENT 0 +#define XPAR_GPIO_2_IS_DUAL 0 + +/* Canonical definitions for peripheral AXI_GPIO_3 */ +#define XPAR_GPIO_3_BASEADDR 0x41230000 +#define XPAR_GPIO_3_HIGHADDR 0x4123FFFF +#define XPAR_GPIO_3_DEVICE_ID XPAR_AXI_GPIO_3_DEVICE_ID +#define XPAR_GPIO_3_INTERRUPT_PRESENT 0 +#define XPAR_GPIO_3_IS_DUAL 0 + /******************************************************************/ @@ -272,14 +313,14 @@ #define XPAR_PS7_I2C_0_DEVICE_ID 0 #define XPAR_PS7_I2C_0_BASEADDR 0xE0004000 #define XPAR_PS7_I2C_0_HIGHADDR 0xE0004FFF -#define XPAR_PS7_I2C_0_I2C_CLK_FREQ_HZ 108333336 +#define XPAR_PS7_I2C_0_I2C_CLK_FREQ_HZ 111111115 /* Definitions for peripheral PS7_I2C_1 */ #define XPAR_PS7_I2C_1_DEVICE_ID 1 #define XPAR_PS7_I2C_1_BASEADDR 0xE0005000 #define XPAR_PS7_I2C_1_HIGHADDR 0xE0005FFF -#define XPAR_PS7_I2C_1_I2C_CLK_FREQ_HZ 108333336 +#define XPAR_PS7_I2C_1_I2C_CLK_FREQ_HZ 111111115 /******************************************************************/ @@ -288,13 +329,13 @@ #define XPAR_XIICPS_0_DEVICE_ID XPAR_PS7_I2C_0_DEVICE_ID #define XPAR_XIICPS_0_BASEADDR 0xE0004000 #define XPAR_XIICPS_0_HIGHADDR 0xE0004FFF -#define XPAR_XIICPS_0_I2C_CLK_FREQ_HZ 108333336 +#define XPAR_XIICPS_0_I2C_CLK_FREQ_HZ 111111115 /* Canonical definitions for peripheral PS7_I2C_1 */ #define XPAR_XIICPS_1_DEVICE_ID XPAR_PS7_I2C_1_DEVICE_ID #define XPAR_XIICPS_1_BASEADDR 0xE0005000 #define XPAR_XIICPS_1_HIGHADDR 0xE0005FFF -#define XPAR_XIICPS_1_I2C_CLK_FREQ_HZ 108333336 +#define XPAR_XIICPS_1_I2C_CLK_FREQ_HZ 111111115 /******************************************************************/ @@ -304,38 +345,38 @@ /* Definitions for peripheral PWM_RECORDER_0 */ #define XPAR_PWM_RECORDER_0_DEVICE_ID 0 -#define XPAR_PWM_RECORDER_0_S_AXI_BASEADDR 0x43C40000 -#define XPAR_PWM_RECORDER_0_S_AXI_HIGHADDR 0x43C4FFFF +#define XPAR_PWM_RECORDER_0_S_AXI_BASEADDR 0x76EA0000 +#define XPAR_PWM_RECORDER_0_S_AXI_HIGHADDR 0x76EAFFFF /* Definitions for peripheral PWM_RECORDER_1 */ #define XPAR_PWM_RECORDER_1_DEVICE_ID 1 -#define XPAR_PWM_RECORDER_1_S_AXI_BASEADDR 0x43C50000 -#define XPAR_PWM_RECORDER_1_S_AXI_HIGHADDR 0x43C5FFFF +#define XPAR_PWM_RECORDER_1_S_AXI_BASEADDR 0x76E80000 +#define XPAR_PWM_RECORDER_1_S_AXI_HIGHADDR 0x76E8FFFF /* Definitions for peripheral PWM_RECORDER_2 */ #define XPAR_PWM_RECORDER_2_DEVICE_ID 2 -#define XPAR_PWM_RECORDER_2_S_AXI_BASEADDR 0x43C60000 -#define XPAR_PWM_RECORDER_2_S_AXI_HIGHADDR 0x43C6FFFF +#define XPAR_PWM_RECORDER_2_S_AXI_BASEADDR 0x76E60000 +#define XPAR_PWM_RECORDER_2_S_AXI_HIGHADDR 0x76E6FFFF /* Definitions for peripheral PWM_RECORDER_3 */ #define XPAR_PWM_RECORDER_3_DEVICE_ID 3 -#define XPAR_PWM_RECORDER_3_S_AXI_BASEADDR 0x43C70000 -#define XPAR_PWM_RECORDER_3_S_AXI_HIGHADDR 0x43C7FFFF +#define XPAR_PWM_RECORDER_3_S_AXI_BASEADDR 0x76E40000 +#define XPAR_PWM_RECORDER_3_S_AXI_HIGHADDR 0x76E4FFFF /* Definitions for peripheral PWM_RECORDER_4 */ #define XPAR_PWM_RECORDER_4_DEVICE_ID 4 -#define XPAR_PWM_RECORDER_4_S_AXI_BASEADDR 0x43C80000 -#define XPAR_PWM_RECORDER_4_S_AXI_HIGHADDR 0x43C8FFFF +#define XPAR_PWM_RECORDER_4_S_AXI_BASEADDR 0x76E20000 +#define XPAR_PWM_RECORDER_4_S_AXI_HIGHADDR 0x76E2FFFF /* Definitions for peripheral PWM_RECORDER_5 */ #define XPAR_PWM_RECORDER_5_DEVICE_ID 5 -#define XPAR_PWM_RECORDER_5_S_AXI_BASEADDR 0x43C90000 -#define XPAR_PWM_RECORDER_5_S_AXI_HIGHADDR 0x43C9FFFF +#define XPAR_PWM_RECORDER_5_S_AXI_BASEADDR 0x76E00000 +#define XPAR_PWM_RECORDER_5_S_AXI_HIGHADDR 0x76E0FFFF /******************************************************************/ @@ -345,26 +386,26 @@ /* Definitions for peripheral PWM_SIGNAL_OUT_0 */ #define XPAR_PWM_SIGNAL_OUT_0_DEVICE_ID 0 -#define XPAR_PWM_SIGNAL_OUT_0_S_AXI_BASEADDR 0x43C00000 -#define XPAR_PWM_SIGNAL_OUT_0_S_AXI_HIGHADDR 0x43C0FFFF +#define XPAR_PWM_SIGNAL_OUT_0_S_AXI_BASEADDR 0x79460000 +#define XPAR_PWM_SIGNAL_OUT_0_S_AXI_HIGHADDR 0x7946FFFF /* Definitions for peripheral PWM_SIGNAL_OUT_1 */ #define XPAR_PWM_SIGNAL_OUT_1_DEVICE_ID 1 -#define XPAR_PWM_SIGNAL_OUT_1_S_AXI_BASEADDR 0x43C10000 -#define XPAR_PWM_SIGNAL_OUT_1_S_AXI_HIGHADDR 0x43C1FFFF +#define XPAR_PWM_SIGNAL_OUT_1_S_AXI_BASEADDR 0x79440000 +#define XPAR_PWM_SIGNAL_OUT_1_S_AXI_HIGHADDR 0x7944FFFF /* Definitions for peripheral PWM_SIGNAL_OUT_2 */ #define XPAR_PWM_SIGNAL_OUT_2_DEVICE_ID 2 -#define XPAR_PWM_SIGNAL_OUT_2_S_AXI_BASEADDR 0x43C20000 -#define XPAR_PWM_SIGNAL_OUT_2_S_AXI_HIGHADDR 0x43C2FFFF +#define XPAR_PWM_SIGNAL_OUT_2_S_AXI_BASEADDR 0x79420000 +#define XPAR_PWM_SIGNAL_OUT_2_S_AXI_HIGHADDR 0x7942FFFF /* Definitions for peripheral PWM_SIGNAL_OUT_3 */ #define XPAR_PWM_SIGNAL_OUT_3_DEVICE_ID 3 -#define XPAR_PWM_SIGNAL_OUT_3_S_AXI_BASEADDR 0x43C30000 -#define XPAR_PWM_SIGNAL_OUT_3_S_AXI_HIGHADDR 0x43C3FFFF +#define XPAR_PWM_SIGNAL_OUT_3_S_AXI_BASEADDR 0x79400000 +#define XPAR_PWM_SIGNAL_OUT_3_S_AXI_HIGHADDR 0x7940FFFF /******************************************************************/ @@ -378,6 +419,7 @@ #define XPAR_PS7_QSPI_0_HIGHADDR 0xE000DFFF #define XPAR_PS7_QSPI_0_QSPI_CLK_FREQ_HZ 200000000 #define XPAR_PS7_QSPI_0_QSPI_MODE 0 +#define XPAR_PS7_QSPI_0_QSPI_BUS_WIDTH 2 /******************************************************************/ @@ -388,27 +430,28 @@ #define XPAR_XQSPIPS_0_HIGHADDR 0xE000DFFF #define XPAR_XQSPIPS_0_QSPI_CLK_FREQ_HZ 200000000 #define XPAR_XQSPIPS_0_QSPI_MODE 0 +#define XPAR_XQSPIPS_0_QSPI_BUS_WIDTH 2 /******************************************************************/ /* Definitions for driver SCUGIC */ -#define XPAR_XSCUGIC_NUM_INSTANCES 1 +#define XPAR_XSCUGIC_NUM_INSTANCES 1U /* Definitions for peripheral PS7_SCUGIC_0 */ -#define XPAR_PS7_SCUGIC_0_DEVICE_ID 0 -#define XPAR_PS7_SCUGIC_0_BASEADDR 0xF8F00100 -#define XPAR_PS7_SCUGIC_0_HIGHADDR 0xF8F001FF -#define XPAR_PS7_SCUGIC_0_DIST_BASEADDR 0xF8F01000 +#define XPAR_PS7_SCUGIC_0_DEVICE_ID 0U +#define XPAR_PS7_SCUGIC_0_BASEADDR 0xF8F00100U +#define XPAR_PS7_SCUGIC_0_HIGHADDR 0xF8F001FFU +#define XPAR_PS7_SCUGIC_0_DIST_BASEADDR 0xF8F01000U /******************************************************************/ /* Canonical definitions for peripheral PS7_SCUGIC_0 */ -#define XPAR_SCUGIC_0_DEVICE_ID 0 -#define XPAR_SCUGIC_0_CPU_BASEADDR 0xF8F00100 -#define XPAR_SCUGIC_0_CPU_HIGHADDR 0xF8F001FF -#define XPAR_SCUGIC_0_DIST_BASEADDR 0xF8F01000 +#define XPAR_SCUGIC_0_DEVICE_ID 0U +#define XPAR_SCUGIC_0_CPU_BASEADDR 0xF8F00100U +#define XPAR_SCUGIC_0_CPU_HIGHADDR 0xF8F001FFU +#define XPAR_SCUGIC_0_DIST_BASEADDR 0xF8F01000U /******************************************************************/ @@ -460,7 +503,7 @@ #define XPAR_PS7_SD_0_HIGHADDR 0xE0100FFF #define XPAR_PS7_SD_0_SDIO_CLK_FREQ_HZ 50000000 #define XPAR_PS7_SD_0_HAS_CD 1 -#define XPAR_PS7_SD_0_HAS_WP 1 +#define XPAR_PS7_SD_0_HAS_WP 0 #define XPAR_PS7_SD_0_BUS_WIDTH 0 #define XPAR_PS7_SD_0_MIO_BANK 0 #define XPAR_PS7_SD_0_HAS_EMIO 0 @@ -468,57 +511,19 @@ /******************************************************************/ +#define XPAR_PS7_SD_0_IS_CACHE_COHERENT 0 /* Canonical definitions for peripheral PS7_SD_0 */ #define XPAR_XSDPS_0_DEVICE_ID XPAR_PS7_SD_0_DEVICE_ID #define XPAR_XSDPS_0_BASEADDR 0xE0100000 #define XPAR_XSDPS_0_HIGHADDR 0xE0100FFF #define XPAR_XSDPS_0_SDIO_CLK_FREQ_HZ 50000000 #define XPAR_XSDPS_0_HAS_CD 1 -#define XPAR_XSDPS_0_HAS_WP 1 +#define XPAR_XSDPS_0_HAS_WP 0 #define XPAR_XSDPS_0_BUS_WIDTH 0 #define XPAR_XSDPS_0_MIO_BANK 0 #define XPAR_XSDPS_0_HAS_EMIO 0 -/******************************************************************/ - -/* Definitions for driver TTCPS */ -#define XPAR_XTTCPS_NUM_INSTANCES 3 - -/* Definitions for peripheral PS7_TTC_0 */ -#define XPAR_PS7_TTC_0_DEVICE_ID 0 -#define XPAR_PS7_TTC_0_BASEADDR 0XF8001000 -#define XPAR_PS7_TTC_0_TTC_CLK_FREQ_HZ 108333336 -#define XPAR_PS7_TTC_0_TTC_CLK_CLKSRC 0 -#define XPAR_PS7_TTC_1_DEVICE_ID 1 -#define XPAR_PS7_TTC_1_BASEADDR 0XF8001004 -#define XPAR_PS7_TTC_1_TTC_CLK_FREQ_HZ 108333336 -#define XPAR_PS7_TTC_1_TTC_CLK_CLKSRC 0 -#define XPAR_PS7_TTC_2_DEVICE_ID 2 -#define XPAR_PS7_TTC_2_BASEADDR 0XF8001008 -#define XPAR_PS7_TTC_2_TTC_CLK_FREQ_HZ 108333336 -#define XPAR_PS7_TTC_2_TTC_CLK_CLKSRC 0 - - -/******************************************************************/ - -/* Canonical definitions for peripheral PS7_TTC_0 */ -#define XPAR_XTTCPS_0_DEVICE_ID XPAR_PS7_TTC_0_DEVICE_ID -#define XPAR_XTTCPS_0_BASEADDR 0xF8001000 -#define XPAR_XTTCPS_0_TTC_CLK_FREQ_HZ 108333336 -#define XPAR_XTTCPS_0_TTC_CLK_CLKSRC 0 - -#define XPAR_XTTCPS_1_DEVICE_ID XPAR_PS7_TTC_1_DEVICE_ID -#define XPAR_XTTCPS_1_BASEADDR 0xF8001004 -#define XPAR_XTTCPS_1_TTC_CLK_FREQ_HZ 108333336 -#define XPAR_XTTCPS_1_TTC_CLK_CLKSRC 0 - -#define XPAR_XTTCPS_2_DEVICE_ID XPAR_PS7_TTC_2_DEVICE_ID -#define XPAR_XTTCPS_2_BASEADDR 0xF8001008 -#define XPAR_XTTCPS_2_TTC_CLK_FREQ_HZ 108333336 -#define XPAR_XTTCPS_2_TTC_CLK_CLKSRC 0 - - /******************************************************************/ /* Definitions for driver UARTPS */ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xparameters_ps.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xparameters_ps.h similarity index 98% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xparameters_ps.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xparameters_ps.h index ea0d2bcde..0fa77710d 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xparameters_ps.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xparameters_ps.h @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2010 - 2015 Xilinx, Inc. All rights reserved. +* Copyright (C) 2010 - 2017 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -45,6 +45,8 @@ * 3.04a sdm 02/02/12 Removed some of the defines as they are being generated through * driver tcl * 5.0 pkp 01/16/15 Added interrupt ID definition of ttc for TEST APP +* 6.6 srm 10/18/17 Added ARMA9 macro to identify CortexA9 +* * </pre> * * @note @@ -60,6 +62,9 @@ extern "C" { #endif +/**************************** Include Files *******************************/ + + /************************** Constant Definitions *****************************/ /* diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xplatform_info.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xplatform_info.h similarity index 88% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xplatform_info.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xplatform_info.h index 27c0b5851..0582222bc 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xplatform_info.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xplatform_info.h @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2014 - 2015 Xilinx, Inc. All rights reserved. +* Copyright (C) 2014 - 2017 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -41,6 +41,15 @@ * platform information. * * @{ +* <pre> +* MODIFICATION HISTORY: +* +* Ver Who Date Changes +* ----- ---- --------- ------------------------------------------------------- +* 6.4 ms 05/23/17 Added PSU_PMU macro to support XGetPSVersion_Info +* function for PMUFW. +* </pre> +* ******************************************************************************/ #ifndef XPLATFORM_INFO_H /* prevent circular inclusions */ @@ -70,6 +79,7 @@ extern "C" { #define XPS_VERSION_2 0x1 #define XPLAT_INFO_MASK (0xF) +#define XPLAT_INFO_SHIFT (0xC) #define XPS_VERSION_INFO_MASK (0xF) /**************************** Type Definitions *******************************/ @@ -79,7 +89,7 @@ extern "C" { u32 XGetPlatform_Info(); -#if defined (ARMR5) || (__aarch64__) || (ARMA53_32) +#if defined (ARMR5) || (__aarch64__) || (ARMA53_32) || (PSU_PMU) u32 XGetPSVersion_Info(); #endif @@ -96,4 +106,4 @@ u32 XGet_Zynq_UltraMp_Platform_info(); #endif /* end of protection macro */ /** * @} End of "addtogroup common_platform_info". -*/ \ No newline at end of file +*/ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xpm_counter.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xpm_counter.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xpm_counter.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xpm_counter.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xpseudo_asm.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xpseudo_asm.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xpseudo_asm.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xpseudo_asm.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xpseudo_asm_gcc.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xpseudo_asm_gcc.h similarity index 96% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xpseudo_asm_gcc.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xpseudo_asm_gcc.h index 1b6726394..37971bc59 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xpseudo_asm_gcc.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xpseudo_asm_gcc.h @@ -120,6 +120,13 @@ extern "C" { rval;\ }) +#define mfelrel3() ({u64 rval = 0U; \ + asm volatile("mrs %0, ELR_EL3" : "=r" (rval));\ + rval;\ + }) + +#define mtelrel3(v) __asm__ __volatile__ ("msr ELR_EL3, %0" : : "r" (v)) + #else /* pseudo assembler instructions */ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xqspips.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xqspips.h similarity index 98% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xqspips.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xqspips.h index 671f3f636..139ce4d38 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xqspips.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xqspips.h @@ -33,7 +33,7 @@ /** * * @file xqspips.h -* @addtogroup qspips_v3_2 +* @addtogroup qspips_v3_4 * @{ * @details * @@ -275,6 +275,12 @@ * to remove compilation warnings. CR# 868893. * ms 03/17/17 Added readme.txt file in examples folder for doxygen * generation. +* ms 04/05/17 Modified Comment lines in functions of qspips +* examples to recognize it as documentation block +* and modified filename tag in +* xqspips_dual_flash_stack_lqspi_example.c to include it in +* doxygen examples. +* 3.4 nsk 31/07/17 Added QSPI_BUS_WIDTH parameter in xparameters.h file * * </pre> * diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xqspips_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xqspips_hw.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xqspips_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xqspips_hw.h index 404afed94..96c867ad3 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xqspips_hw.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xqspips_hw.h @@ -33,7 +33,7 @@ /** * * @file xqspips_hw.h -* @addtogroup qspips_v3_2 +* @addtogroup qspips_v3_4 * @{ * * This header file contains the identifiers and basic HW access driver diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xreg_cortexa9.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xreg_cortexa9.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xreg_cortexa9.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xreg_cortexa9.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xscugic.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xscugic.h similarity index 92% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xscugic.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xscugic.h index fb6624239..e22ee5bc2 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xscugic.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xscugic.h @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2010 - 2015 Xilinx, Inc. All rights reserved. +* Copyright (C) 2010 - 2018 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -33,7 +33,7 @@ /** * * @file xscugic.h -* @addtogroup scugic_v3_1 +* @addtogroup scugic_v3_8 * @{ * @details * @@ -166,6 +166,19 @@ * XScugiC_GetCpuId to access CpuId. * ms 03/17/17 Added readme.txt file in examples folder for doxygen * generation. +* 3.7 ms 04/11/17 Modified tcl file to add suffix U for all macro +* definitions of scugic in xparameters.h +* 3.8 mus 07/05/17 Updated scugic.tcl to add support for intrrupts connected +* through util_reduced_vector IP(OR gate) +* mus 07/05/17 Updated xdefine_zynq_canonical_xpars proc to initialize +* the HandlerTable in XScuGic_ConfigTable to 0, it removes +* the compilation warning in xscugic_g.c. Fix for CR#978736. +* mus 07/25/17 Updated xdefine_gic_params proc to export correct canonical +* definitions for pl to ps interrupts.Fix for CR#980534 +* 3.9 mus 02/21/18 Added new API's XScuGic_UnmapAllInterruptsFromCpu and +* XScuGic_InterruptUnmapFromCpu, These API's can be used +* by applications to unmap specific/all interrupts from +* target CPU. * * </pre> * @@ -331,6 +344,8 @@ void XScuGic_GetPriorityTriggerType(XScuGic *InstancePtr, u32 Int_Id, void XScuGic_SetPriorityTriggerType(XScuGic *InstancePtr, u32 Int_Id, u8 Priority, u8 Trigger); void XScuGic_InterruptMaptoCpu(XScuGic *InstancePtr, u8 Cpu_Id, u32 Int_Id); +void XScuGic_InterruptUnmapFromCpu(XScuGic *InstancePtr, u8 Cpu_Id, u32 Int_Id); +void XScuGic_UnmapAllInterruptsFromCpu(XScuGic *InstancePtr, u8 Cpu_Id); void XScuGic_Stop(XScuGic *InstancePtr); void XScuGic_SetCpuID(u32 CpuCoreId); u32 XScuGic_GetCpuID(void); diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xscugic_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xscugic_hw.h similarity index 98% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xscugic_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xscugic_hw.h index 5eaa633e3..08e65f456 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xscugic_hw.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xscugic_hw.h @@ -33,7 +33,7 @@ /** * * @file xscugic_hw.h -* @addtogroup scugic_v3_1 +* @addtogroup scugic_v3_8 * @{ * * This header file contains identifiers and HW access functions (or @@ -72,6 +72,10 @@ * 3.0 kvn 02/13/14 Modified code for MISRA-C:2012 compliance. * 3.2 pkp 11/09/15 Corrected the interrupt processsor target mask value * for CPU interface 2 i.e. XSCUGIC_SPI_CPU2_MASK +* 3.9 mus 02/21/18 Added new API's XScuGic_InterruptUnmapFromCpuByDistAddr +* and XScuGic_UnmapAllInterruptsFromCpuByDistAddr, These +* API's can be used by applications to unmap specific/all +* interrupts from target CPU. It fixes CR#992490. * </pre> * ******************************************************************************/ @@ -633,6 +637,10 @@ void XScuGic_SetPriTrigTypeByDistAddr(u32 DistBaseAddress, u32 Int_Id, u8 Priority, u8 Trigger); void XScuGic_GetPriTrigTypeByDistAddr(u32 DistBaseAddress, u32 Int_Id, u8 *Priority, u8 *Trigger); +void XScuGic_InterruptUnmapFromCpuByDistAddr(u32 DistBaseAddress, + u8 Cpu_Id, u32 Int_Id); +void XScuGic_UnmapAllInterruptsFromCpuByDistAddr(u32 DistBaseAddress, + u8 Cpu_Id); /************************** Variable Definitions *****************************/ #ifdef __cplusplus } diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xscutimer.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xscutimer.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xscutimer.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xscutimer.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xscutimer_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xscutimer_hw.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xscutimer_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xscutimer_hw.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xscuwdt.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xscuwdt.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xscuwdt.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xscuwdt.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xscuwdt_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xscuwdt_hw.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xscuwdt_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xscuwdt_hw.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2/src/xsdps.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xsdps.h similarity index 94% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2/src/xsdps.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xsdps.h index 9e475207d..b8d979d1d 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2/src/xsdps.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xsdps.h @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2013 - 2016 Xilinx, Inc. All rights reserved. +* Copyright (C) 2013 - 2018 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -33,7 +33,7 @@ /** * * @file xsdps.h -* @addtogroup sdps_v2_5 +* @addtogroup sdps_v3_5 * @{ * @details * @@ -144,6 +144,11 @@ * sk 02/01/17 Consider bus width parameter from design for switching * vns 02/09/17 Added ARMA53_32 support for ZynqMP CR#968397 * sk 03/20/17 Add support for EL1 non-secure mode. +* 3.3 mn 05/17/17 Add support for 64bit DMA addressing +* mn 08/07/17 Modify driver to support 64-bit DMA in arm64 only +* mn 08/17/17 Enabled CCI support for A53 by adding cache coherency +* information. +* mn 09/06/17 Resolved compilation errors with IAR toolchain * * </pre> * @@ -161,6 +166,7 @@ extern "C" { #include "xil_cache.h" #include "xstatus.h" #include "xsdps_hw.h" +#include "xplatform_info.h" #include <string.h> /************************** Constant Definitions *****************************/ @@ -184,14 +190,25 @@ typedef struct { u32 BusWidth; /**< Bus Width */ u32 BankNumber; /**< MIO Bank selection for SD */ u32 HasEMIO; /**< If SD is connected to EMIO */ + u8 IsCacheCoherent; /**< If SD is Cache Coherent or not */ } XSdPs_Config; /* ADMA2 descriptor table */ typedef struct { u16 Attribute; /**< Attributes of descriptor */ u16 Length; /**< Length of current dma transfer */ +#ifdef __aarch64__ + u64 Address; /**< Address of current dma transfer */ +#else u32 Address; /**< Address of current dma transfer */ +#endif +#ifdef __ICCARM__ +#pragma data_alignment = 32 } XSdPs_Adma2Descriptor; +#pragma data_alignment = 4 +#else +} __attribute__((__packed__))XSdPs_Adma2Descriptor; +#endif /** * The XSdPs driver instance data. The user is required to allocate a diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2/src/xsdps_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xsdps_hw.h similarity index 96% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2/src/xsdps_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xsdps_hw.h index 6bb6c2a61..c63d8f62a 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2/src/xsdps_hw.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xsdps_hw.h @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2013 - 2016 Xilinx, Inc. All rights reserved. +* Copyright (C) 2013 - 2018 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -33,7 +33,7 @@ /** * * @file xsdps_hw.h -* @addtogroup sdps_v2_5 +* @addtogroup sdps_v3_5 * @{ * * This header file contains the identifiers and basic HW access driver @@ -57,6 +57,10 @@ * operating modes. * 3.1 sk 11/07/16 Enable Rst_n bit in ext_csd reg if not enabled. * 3.2 sk 03/20/17 Add support for EL1 non-secure mode. +* 3.3 mn 08/22/17 Updated for Word Access System support +* mn 09/06/17 Added support for ARMCC toolchain +* 3.4 mn 01/22/18 Separated out SDR104 and HS200 clock defines +* * </pre> * ******************************************************************************/ @@ -995,6 +999,13 @@ extern "C" { #define XSDPS_SD_SDR50_MAX_CLK 100000000U #define XSDPS_SD_DDR50_MAX_CLK 50000000U #define XSDPS_SD_SDR104_MAX_CLK 208000000U +/* + * XSDPS_SD_INPUT_MAX_CLK is set to 175000000 in order to keep it smaller + * than the clock value coming from the core. This value is kept to safely + * switch to SDR104 mode if the SD card supports it. + */ +#define XSDPS_SD_INPUT_MAX_CLK 175000000U + #define XSDPS_MMC_HS200_MAX_CLK 200000000U #define XSDPS_MMC_HSD_MAX_CLK 52000000U #define XSDPS_MMC_DDR_MAX_CLK 52000000U @@ -1163,8 +1174,18 @@ extern "C" { * u16 XSdPs_ReadReg(u32 BaseAddress. int RegOffset) * ******************************************************************************/ -#define XSdPs_ReadReg16(BaseAddress, RegOffset) \ - XSdPs_In16((BaseAddress) + (RegOffset)) +static INLINE u16 XSdPs_ReadReg16(u32 BaseAddress, u8 RegOffset) +{ +#if defined (__MICROBLAZE__) + u32 Reg; + BaseAddress += RegOffset & 0xFC; + Reg = XSdPs_In32(BaseAddress); + Reg >>= ((RegOffset & 0x3)*8); + return (u16)Reg; +#else + return XSdPs_In16((BaseAddress) + (RegOffset)); +#endif +} /***************************************************************************/ /** @@ -1182,8 +1203,20 @@ extern "C" { * u16 RegisterValue) * ******************************************************************************/ -#define XSdPs_WriteReg16(BaseAddress, RegOffset, RegisterValue) \ - XSdPs_Out16((BaseAddress) + (RegOffset), (RegisterValue)) + +static INLINE void XSdPs_WriteReg16(u32 BaseAddress, u8 RegOffset, u16 RegisterValue) +{ +#if defined (__MICROBLAZE__) + u32 Reg; + BaseAddress += RegOffset & 0xFC; + Reg = XSdPs_In32(BaseAddress); + Reg &= ~(0xFFFF<<((RegOffset & 0x3)*8)); + Reg |= RegisterValue <<((RegOffset & 0x3)*8); + XSdPs_Out32(BaseAddress, Reg); +#else + XSdPs_Out16((BaseAddress) + (RegOffset), (RegisterValue)); +#endif +} /****************************************************************************/ /** @@ -1199,9 +1232,18 @@ extern "C" { * u8 XSdPs_ReadReg(u32 BaseAddress. int RegOffset) * ******************************************************************************/ -#define XSdPs_ReadReg8(BaseAddress, RegOffset) \ - XSdPs_In8((BaseAddress) + (RegOffset)) - +static INLINE u8 XSdPs_ReadReg8(u32 BaseAddress, u8 RegOffset) +{ +#if defined (__MICROBLAZE__) + u32 Reg; + BaseAddress += RegOffset & 0xFC; + Reg = XSdPs_In32(BaseAddress); + Reg >>= ((RegOffset & 0x3)*8); + return (u8)Reg; +#else + return XSdPs_In8((BaseAddress) + (RegOffset)); +#endif +} /***************************************************************************/ /** * Write to a register. @@ -1218,9 +1260,19 @@ extern "C" { * u8 RegisterValue) * ******************************************************************************/ -#define XSdPs_WriteReg8(BaseAddress, RegOffset, RegisterValue) \ - XSdPs_Out8((BaseAddress) + (RegOffset), (RegisterValue)) - +static INLINE void XSdPs_WriteReg8(u32 BaseAddress, u8 RegOffset, u8 RegisterValue) +{ +#if defined (__MICROBLAZE__) + u32 Reg; + BaseAddress += RegOffset & 0xFC; + Reg = XSdPs_In32(BaseAddress); + Reg &= ~(0xFF<<((RegOffset & 0x3)*8)); + Reg |= RegisterValue <<((RegOffset & 0x3)*8); + XSdPs_Out32(BaseAddress, Reg); +#else + XSdPs_Out8((BaseAddress) + (RegOffset), (RegisterValue)); +#endif +} /***************************************************************************/ /** * Macro to get present status register diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xstatus.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xstatus.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xstatus.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xstatus.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xtime_l.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xtime_l.h similarity index 90% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xtime_l.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xtime_l.h index f939d84f6..9b872b6cb 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xtime_l.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xtime_l.h @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2009 - 2015 Xilinx, Inc. All rights reserved. +* Copyright (C) 2009 - 2017 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -48,6 +48,8 @@ * 3.06a sgd 05/15/12 Upadted get/set time functions to make use Global Timer * 3.06a asa 06/17/12 Reverted back the changes to make use Global Timer. * 3.07a sgd 07/05/12 Upadted get/set time functions to make use Global Timer +* 6.6 srm 10/23/17 Updated the macros to support user configurable sleep +* implementation * </pre> * ******************************************************************************/ @@ -76,9 +78,16 @@ typedef u64 XTime; #define GTIMER_COUNTER_UPPER_OFFSET 0x04U #define GTIMER_CONTROL_OFFSET 0x08U - +#if defined (SLEEP_TIMER_BASEADDR) +#define COUNTS_PER_SECOND (SLEEP_TIMER_FREQUENCY) +#else /* Global Timer is always clocked at half of the CPU frequency */ #define COUNTS_PER_SECOND (XPAR_CPU_CORTEXA9_CORE_CLOCK_FREQ_HZ /2) +#endif + +#if defined (XSLEEP_TIMER_IS_DEFAULT_TIMER) +#pragma message ("For the sleep routines, Global timer is being used") +#endif /************************** Variable Definitions *****************************/ /************************** Function Prototypes ******************************/ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xuartps.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xuartps.h similarity index 98% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xuartps.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xuartps.h index a5155940e..33758c23b 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xuartps.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xuartps.h @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2010 - 2015 Xilinx, Inc. All rights reserved. +* Copyright (C) 2010 - 2017 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -33,7 +33,7 @@ /** * * @file xuartps.h -* @addtogroup uartps_v3_1 +* @addtogroup uartps_v3_5 * @{ * @details * @@ -168,6 +168,8 @@ * for CR-965028. * ms 03/17/17 Added readme.txt file in examples folder for doxygen * generation. +* 3.6 ms 02/16/18 Updates the flow control mode offset value in modem +* control register. * * </pre> * diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xuartps_hw.h similarity index 98% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xuartps_hw.h index 9f5f0b700..9a2bc4305 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps_hw.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xuartps_hw.h @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2010 - 2015 Xilinx, Inc. All rights reserved. +* Copyright (C) 2010 - 2017 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -33,7 +33,7 @@ /** * * @file xuartps_hw.h -* @addtogroup uartps_v3_1 +* @addtogroup uartps_v3_5 * @{ * * This header file contains the hardware interface of an XUartPs device. @@ -55,6 +55,8 @@ * constant definitions. * 3.00 kvn 02/13/15 Modified code for MISRA-C:2012 compliance. * 3.1 kvn 04/10/15 Modified code for latest RTL changes. +* 3.6 ms 02/16/18 Updates flow control mode offset value in +* modem control register. * * </pre> * @@ -256,7 +258,7 @@ extern "C" { * * @{ */ -#define XUARTPS_MODEMCR_FCM 0x00000010U /**< Flow control mode */ +#define XUARTPS_MODEMCR_FCM 0x00000020U /**< Flow control mode */ #define XUARTPS_MODEMCR_RTS 0x00000002U /**< Request to send */ #define XUARTPS_MODEMCR_DTR 0x00000001U /**< Data terminal ready */ /* @} */ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xusbps.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xusbps.h index 4a4492cdc..b5c472ef9 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xusbps.h @@ -33,7 +33,7 @@ /** * * @file xusbps.h -* @addtogroup usbps_v2_2 +* @addtogroup usbps_v2_4 * @{ * @details * @@ -185,6 +185,8 @@ * 2.4 sg 04/26/16 Fixed CR#949693, Corrected the logic for EP flush * ms 03/17/17 Added readme.txt file in examples folder for doxygen * generation. + * ms 04/10/17 Modified filename tag to include the file in doxygen + * examples. * </pre> * ******************************************************************************/ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_endpoint.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xusbps_endpoint.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_endpoint.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xusbps_endpoint.h index b8b9ad685..1cb0cfcd3 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_endpoint.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xusbps_endpoint.h @@ -33,7 +33,7 @@ /** * * @file xusbps_endpoint.h -* @addtogroup usbps_v2_2 +* @addtogroup usbps_v2_4 * @{ * * This is an internal file containung the definitions for endpoints. It is diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xusbps_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xusbps_hw.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xusbps_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xusbps_hw.h index 792fbdde5..69f3ebffb 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xusbps_hw.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/include/xusbps_hw.h @@ -33,7 +33,7 @@ /** * * @file xusbps_hw.h -* @addtogroup usbps_v2_2 +* @addtogroup usbps_v2_4 * @{ * * This header file contains identifiers and low-level driver functions (or diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/coresightps_dcc_v1_4/src/Makefile b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/coresightps_dcc_v1_4/src/Makefile similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/coresightps_dcc_v1_4/src/Makefile rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/coresightps_dcc_v1_4/src/Makefile diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/coresightps_dcc_v1_4/src/xcoresightpsdcc.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/coresightps_dcc_v1_4/src/xcoresightpsdcc.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/coresightps_dcc_v1_4/src/xcoresightpsdcc.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/coresightps_dcc_v1_4/src/xcoresightpsdcc.c index cfa356ced..fca26ca2e 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/coresightps_dcc_v1_4/src/xcoresightpsdcc.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/coresightps_dcc_v1_4/src/xcoresightpsdcc.c @@ -33,7 +33,7 @@ /** * * @file xcoresightpsdcc.c -* @addtogroup coresightps_dcc_v1_1 +* @addtogroup coresightps_dcc_v1_4 * @{ * * Functions in this file are the minimum required functions for the diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xcoresightpsdcc.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/coresightps_dcc_v1_4/src/xcoresightpsdcc.h similarity index 98% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xcoresightpsdcc.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/coresightps_dcc_v1_4/src/xcoresightpsdcc.h index a732b235d..67959e327 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xcoresightpsdcc.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/coresightps_dcc_v1_4/src/xcoresightpsdcc.h @@ -33,7 +33,7 @@ /** * * @file xcoresightpsdcc.h -* @addtogroup coresightps_dcc_v1_1 +* @addtogroup coresightps_dcc_v1_4 * @{ * @details * diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_4/src/Makefile b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_6/src/Makefile similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_4/src/Makefile rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_6/src/Makefile diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xcpu_cortexa9.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_6/src/xcpu_cortexa9.h similarity index 86% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xcpu_cortexa9.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_6/src/xcpu_cortexa9.h index 4d441e53e..95c8ba536 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xcpu_cortexa9.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_6/src/xcpu_cortexa9.h @@ -33,11 +33,16 @@ /** * * @file xcpu_cortexa9.h -* @addtogroup cpu_cortexa9_v2_1 +* @addtogroup cpu_cortexa9_v2_5 * @{ * @details * * dummy file +* MODIFICATION HISTORY: * +* Ver Who Date Changes +* ----- ---- -------- --------------------------------------------------------- +* 2.5 ms 04/18/17 Modified tcl file to add suffix U for XPAR_CPU_ID +* parameter of cpu_cortexa9 in xparameters.h ******************************************************************************/ /** @} */ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ddrps_v1_0/src/Makefile b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/ddrps_v1_0/src/Makefile similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ddrps_v1_0/src/Makefile rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/ddrps_v1_0/src/Makefile diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xddrps.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/ddrps_v1_0/src/xddrps.h similarity index 96% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xddrps.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/ddrps_v1_0/src/xddrps.h index fe7adb066..c8804d2ed 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xddrps.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/ddrps_v1_0/src/xddrps.h @@ -18,8 +18,8 @@ * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * XILINX CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * XILINX BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/Makefile b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/Makefile similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/Makefile rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/Makefile diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/xdevcfg.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/xdevcfg.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/xdevcfg.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/xdevcfg.c index dcb80303d..e9447e7e3 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/xdevcfg.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/xdevcfg.c @@ -33,7 +33,7 @@ /** * * @file xdevcfg.c -* @addtogroup devcfg_v3_3 +* @addtogroup devcfg_v3_5 * @{ * * This file contains the implementation of the interface functions for XDcfg diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xdevcfg.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/xdevcfg.h similarity index 97% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xdevcfg.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/xdevcfg.h index 7fc1332a5..b9a0111d6 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xdevcfg.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/xdevcfg.h @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2010 - 2015 Xilinx, Inc. All rights reserved. +* Copyright (C) 2010 - 2017 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -33,7 +33,7 @@ /** * * @file xdevcfg.h -* @addtogroup devcfg_v3_3 +* @addtogroup devcfg_v3_5 * @{ * @details * @@ -154,7 +154,11 @@ * 3.3 sk 04/06/15 Modified XDcfg_ReadMultiBootConfig Macro CR# 851335. * ms 03/17/17 Added readme.txt file in examples folder for doxygen * generation. -* +* ms 04/10/17 Modified filename tag in interrupt and polled examples +* to include them in doxygen examples. +* 3.5 ms 04/18/17 Modified tcl file to add suffix U for all macros +* definitions of devcfg in xparameters.h +* ms 08/07/17 Fixed compilation warnings in xdevcfg_sinit.c * </pre> * ******************************************************************************/ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/xdevcfg_g.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/xdevcfg_g.c similarity index 96% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/xdevcfg_g.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/xdevcfg_g.c index 938489f6b..dc4228399 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/xdevcfg_g.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/xdevcfg_g.c @@ -5,7 +5,7 @@ * Version: * DO NOT EDIT. * -* Copyright (C) 2010-2017 Xilinx, Inc. All Rights Reserved.* +* Copyright (C) 2010-2018 Xilinx, Inc. All Rights Reserved.* *Permission is hereby granted, free of charge, to any person obtaining a copy *of this software and associated documentation files (the Software), to deal *in the Software without restriction, including without limitation the rights diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/xdevcfg_hw.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/xdevcfg_hw.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/xdevcfg_hw.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/xdevcfg_hw.c index 8a3095de3..bcb238f06 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/xdevcfg_hw.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/xdevcfg_hw.c @@ -33,7 +33,7 @@ /** * * @file xdevcfg_hw.c -* @addtogroup devcfg_v3_3 +* @addtogroup devcfg_v3_5 * @{ * * This file contains the implementation of the interface reset functionality diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/xdevcfg_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/xdevcfg_hw.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/xdevcfg_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/xdevcfg_hw.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/xdevcfg_intr.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/xdevcfg_intr.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/xdevcfg_intr.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/xdevcfg_intr.c index 55bbde2f0..b41b7ea37 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/xdevcfg_intr.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/xdevcfg_intr.c @@ -33,7 +33,7 @@ /** * * @file xdevcfg_intr.c -* @addtogroup devcfg_v3_3 +* @addtogroup devcfg_v3_5 * @{ * * Contains the implementation of interrupt related functions of the XDcfg diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/xdevcfg_selftest.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/xdevcfg_selftest.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/xdevcfg_selftest.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/xdevcfg_selftest.c index 7159782e1..40cf1de6a 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/xdevcfg_selftest.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/xdevcfg_selftest.c @@ -33,7 +33,7 @@ /** * * @file xdevcfg_selftest.c -* @addtogroup devcfg_v3_3 +* @addtogroup devcfg_v3_5 * @{ * * Contains diagnostic self-test functions for the XDcfg driver. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/xdevcfg_sinit.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/xdevcfg_sinit.c similarity index 93% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/xdevcfg_sinit.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/xdevcfg_sinit.c index d0d0e6d99..bbc96a0c6 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/devcfg_v3_4/src/xdevcfg_sinit.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/devcfg_v3_5/src/xdevcfg_sinit.c @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2010 - 2015 Xilinx, Inc. All rights reserved. +* Copyright (C) 2010 - 2017 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -33,7 +33,7 @@ /** * * @file xdevcfg_sinit.c -* @addtogroup devcfg_v3_3 +* @addtogroup devcfg_v3_5 * @{ * * This file contains method for static initialization (compile-time) of the @@ -45,6 +45,7 @@ * Ver Who Date Changes * ----- --- -------- --------------------------------------------- * 1.00a hvm 02/07/11 First release +* 3.5 ms 08/07/17 Fixed compilation warnings. * </pre> * ******************************************************************************/ @@ -79,9 +80,9 @@ XDcfg_Config *XDcfg_LookupConfig(u16 DeviceId) { extern XDcfg_Config XDcfg_ConfigTable[]; XDcfg_Config *CfgPtr = NULL; - int Index; + u32 Index; - for (Index = 0; Index < XPAR_XDCFG_NUM_INSTANCES; Index++) { + for (Index = 0U; Index < XPAR_XDCFG_NUM_INSTANCES; Index++) { if (XDcfg_ConfigTable[Index].DeviceId == DeviceId) { CfgPtr = &XDcfg_ConfigTable[Index]; break; diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/Makefile b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/Makefile similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/Makefile rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/Makefile diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps.c index cb0d62a6f..9db769284 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps.c @@ -33,7 +33,7 @@ /** * * @file xdmaps.c -* @addtogroup dmaps_v2_1 +* @addtogroup dmaps_v2_3 * @{ * * This file contains the implementation of the interface functions for XDmaPs diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps.h index e0a283600..5a0c1a28e 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps.h @@ -33,7 +33,7 @@ /** * * @file xdmaps.h -* @addtogroup dmaps_v2_1 +* @addtogroup dmaps_v2_3 * @{ * @details * diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_g.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_g.c similarity index 96% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_g.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_g.c index 00ed746e1..03b400a0b 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_g.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_g.c @@ -5,7 +5,7 @@ * Version: * DO NOT EDIT. * -* Copyright (C) 2010-2017 Xilinx, Inc. All Rights Reserved.* +* Copyright (C) 2010-2018 Xilinx, Inc. All Rights Reserved.* *Permission is hereby granted, free of charge, to any person obtaining a copy *of this software and associated documentation files (the Software), to deal *in the Software without restriction, including without limitation the rights diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_hw.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_hw.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_hw.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_hw.c index 9fc3dd898..4c0cfbfd2 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_hw.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_hw.c @@ -33,7 +33,7 @@ /** * * @file xdmaps_hw.c -* @addtogroup dmaps_v2_1 +* @addtogroup dmaps_v2_3 * @{ * * This file contains the implementation of the interface reset functionality diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_hw.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_hw.h index 1186107ac..628f1ec4f 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_hw.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_hw.h @@ -33,7 +33,7 @@ /** * * @file xdmaps_hw.h -* @addtogroup dmaps_v2_1 +* @addtogroup dmaps_v2_3 * @{ * * This header file contains the hardware interface of an XDmaPs device. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_selftest.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_selftest.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_selftest.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_selftest.c index eae0846b5..daebd9903 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_selftest.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_selftest.c @@ -33,7 +33,7 @@ /** * * @file xdmaps_selftest.c -* @addtogroup dmaps_v2_1 +* @addtogroup dmaps_v2_3 * @{ * * This file contains the self-test functions for the XDmaPs driver. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_sinit.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_sinit.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_sinit.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_sinit.c index 20866cf57..b92ee5311 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_sinit.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/dmaps_v2_3/src/xdmaps_sinit.c @@ -33,7 +33,7 @@ /** * * @file xdmaps_sinit.c -* @addtogroup dmaps_v2_1 +* @addtogroup dmaps_v2_3 * @{ * * The implementation of the XDmaPs driver's static initialzation diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/Makefile b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/Makefile similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/Makefile rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/Makefile diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps.c similarity index 98% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps.c index 26df03c3d..c013c4946 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps.c @@ -33,7 +33,7 @@ /** * * @file xemacps.c -* @addtogroup emacps_v3_1 +* @addtogroup emacps_v3_7 * @{ * * The XEmacPs driver. Functions in this file are the minimum required functions @@ -52,6 +52,8 @@ * Disable extended mode. Perform all 64 bit changes under * check for arch64. * 3.1 hk 08/10/15 Update upper 32 bit tx and rx queue ptr registers +* 3.5 hk 08/14/17 Update cache coherency information of the interface in +* its config structure. * * </pre> ******************************************************************************/ @@ -107,6 +109,7 @@ LONG XEmacPs_CfgInitialize(XEmacPs *InstancePtr, XEmacPs_Config * CfgPtr, /* Set device base address and ID */ InstancePtr->Config.DeviceId = CfgPtr->DeviceId; InstancePtr->Config.BaseAddress = EffectiveAddress; + InstancePtr->Config.IsCacheCoherent = CfgPtr->IsCacheCoherent; /* Set callbacks to an initial stub routine */ InstancePtr->SendHandler = ((XEmacPs_Handler)((void*)XEmacPs_StubHandler)); diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xemacps.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps.h similarity index 98% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xemacps.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps.h index 1dbdbb20d..6d4b15b24 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xemacps.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps.h @@ -33,7 +33,7 @@ /** * * @file xemacps.h -* @addtogroup emacps_v3_1 +* @addtogroup emacps_v3_7 * @{ * @details * @@ -322,6 +322,15 @@ * for CR-965028. * ms 03/17/17 Modified text file in examples folder for doxygen * generation. + * ms 04/05/17 Added tabspace for return statements in functions of + * xemacps_ieee1588_example.c for proper documentation + * while generating doxygen. + * 3.5 hk 08/14/17 Update cache coherency information of the interface in + * its config structure. + * 3.6 rb 09/08/17 HwCnt variable (in XEmacPs_BdRing structure) is + * changed to volatile. + * Add API XEmacPs_BdRingPtrReset() to reset pointers + * * </pre> * ****************************************************************************/ @@ -519,6 +528,8 @@ typedef void (*XEmacPs_ErrHandler) (void *CallBackRef, u8 Direction, typedef struct { u16 DeviceId; /**< Unique ID of device */ UINTPTR BaseAddress;/**< Physical base address of IPIF registers */ + u8 IsCacheCoherent; /**< Applicable only to A53 in EL1 mode; + * describes whether Cache Coherent or not */ } XEmacPs_Config; diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xemacps_bd.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_bd.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xemacps_bd.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_bd.h index 52c5f7e7e..83f9a87fc 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xemacps_bd.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_bd.h @@ -33,7 +33,7 @@ /** * * @file xemacps_bd.h -* @addtogroup emacps_v3_1 +* @addtogroup emacps_v3_7 * @{ * * This header provides operations to manage buffer descriptors in support diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_bdring.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_bdring.c similarity index 97% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_bdring.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_bdring.c index 7c539f448..3536873dc 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_bdring.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_bdring.c @@ -33,7 +33,7 @@ /** * * @file xemacps_bdring.c -* @addtogroup emacps_v3_1 +* @addtogroup emacps_v3_7 * @{ * * This file implements buffer descriptor ring related functions. @@ -57,6 +57,8 @@ * from uncached area. Fix for CR #663885. * 2.1 srt 07/15/14 Add support for Zynq Ultrascale Mp architecture. * 3.0 kvn 02/13/15 Modified code for MISRA-C:2012 compliance. +* 3.6 rb 09/08/17 Add XEmacPs_BdRingPtrReset() API to reset BD ring +* pointers * * </pre> ******************************************************************************/ @@ -1072,4 +1074,29 @@ static void XEmacPs_BdSetTxWrap(UINTPTR BdPtr) *TempPtr = DataValueTx; } } + +/*****************************************************************************/ +/** + * Reset BD ring head and tail pointers. + * + * @param RingPtr is the instance to be worked on. + * @param VirtAddr is the virtual base address of the user memory region. + * + * @note + * Should be called after XEmacPs_Stop() + * + * @note + * C-style signature: + * void XEmacPs_BdRingPtrReset(XEmacPs_BdRing * RingPtr, void *virtaddrloc) + * + *****************************************************************************/ +void XEmacPs_BdRingPtrReset(XEmacPs_BdRing * RingPtr, void *virtaddrloc) +{ + RingPtr->FreeHead = virtaddrloc; + RingPtr->PreHead = virtaddrloc; + RingPtr->HwHead = virtaddrloc; + RingPtr->HwTail = virtaddrloc; + RingPtr->PostHead = virtaddrloc; +} + /** @} */ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xemacps_bdring.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_bdring.h similarity index 97% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xemacps_bdring.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_bdring.h index de78cf28f..b89e89885 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xemacps_bdring.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_bdring.h @@ -33,7 +33,7 @@ /** * * @file xemacps_bdring.h -* @addtogroup emacps_v3_1 +* @addtogroup emacps_v3_7 * @{ * * The Xiline EmacPs Buffer Descriptor ring driver. This is part of EmacPs @@ -47,6 +47,8 @@ * 1.00a wsy 01/10/10 First release * 2.1 srt 07/15/14 Add support for Zynq Ultrascale Mp architecture. * 3.0 kvn 02/13/15 Modified code for MISRA-C:2012 compliance. +* 3.6 rb 09/08/17 HwCnt variable (in XEmacPs_BdRing structure) is +* changed to volatile. * * </pre> * @@ -81,7 +83,7 @@ typedef struct { XEmacPs_Bd *BdaRestart; /**< BDA to load when channel is started */ - u32 HwCnt; /**< Number of BDs in work group */ + volatile u32 HwCnt; /**< Number of BDs in work group */ u32 PreCnt; /**< Number of BDs in pre-work group */ u32 FreeCnt; /**< Number of allocatable BDs in the free group */ u32 PostCnt; /**< Number of BDs in post-work group */ @@ -228,6 +230,7 @@ u32 XEmacPs_BdRingFromHwRx(XEmacPs_BdRing * RingPtr, u32 BdLimit, XEmacPs_Bd ** BdSetPtr); LONG XEmacPs_BdRingCheck(XEmacPs_BdRing * RingPtr, u8 Direction); +void XEmacPs_BdRingPtrReset(XEmacPs_BdRing * RingPtr, void *virtaddrloc); #ifdef __cplusplus } diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_control.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_control.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_control.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_control.c index f52451a8c..8217a4521 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_control.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_control.c @@ -33,7 +33,7 @@ /** * * @file xemacps_control.c -* @addtogroup emacps_v3_1 +* @addtogroup emacps_v3_7 * @{ * * Functions in this file implement general purpose command and control related diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_g.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_g.c similarity index 93% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_g.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_g.c index 081f9ed53..095bfd7a9 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_g.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_g.c @@ -5,7 +5,7 @@ * Version: * DO NOT EDIT. * -* Copyright (C) 2010-2017 Xilinx, Inc. All Rights Reserved.* +* Copyright (C) 2010-2018 Xilinx, Inc. All Rights Reserved.* *Permission is hereby granted, free of charge, to any person obtaining a copy *of this software and associated documentation files (the Software), to deal *in the Software without restriction, including without limitation the rights @@ -48,7 +48,8 @@ XEmacPs_Config XEmacPs_ConfigTable[XPAR_XEMACPS_NUM_INSTANCES] = { { XPAR_PS7_ETHERNET_0_DEVICE_ID, - XPAR_PS7_ETHERNET_0_BASEADDR + XPAR_PS7_ETHERNET_0_BASEADDR, + XPAR_PS7_ETHERNET_0_IS_CACHE_COHERENT } }; diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_hw.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_hw.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_hw.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_hw.c index daba38397..00e79a58d 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_hw.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_hw.c @@ -33,7 +33,7 @@ /** * * @file xemacps_hw.c -* @addtogroup emacps_v3_1 +* @addtogroup emacps_v3_7 * @{ * * This file contains the implementation of the ethernet interface reset sequence diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_hw.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_hw.h index 953cc6265..e535470c2 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_hw.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_hw.h @@ -33,7 +33,7 @@ /** * * @file xemacps_hw.h -* @addtogroup emacps_v3_1 +* @addtogroup emacps_v3_7 * @{ * * This header file contains identifiers and low-level driver functions (or diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_intr.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_intr.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_intr.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_intr.c index 59636c4ef..9c355a163 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_intr.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_intr.c @@ -33,7 +33,7 @@ /** * * @file xemacps_intr.c -* @addtogroup emacps_v3_1 +* @addtogroup emacps_v3_7 * @{ * * Functions in this file implement general purpose interrupt processing related diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_sinit.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_sinit.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_sinit.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_sinit.c index 1bc5b3b19..e2d2078af 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/emacps_v3_4/src/xemacps_sinit.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/emacps_v3_7/src/xemacps_sinit.c @@ -33,7 +33,7 @@ /** * * @file xemacps_sinit.c -* @addtogroup emacps_v3_1 +* @addtogroup emacps_v3_7 * @{ * * This file contains lookup method by device ID when success, it returns diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/Makefile b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/Makefile similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/Makefile rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/Makefile diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio.c index fe968c868..9b7210064 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio.c @@ -32,7 +32,7 @@ /*****************************************************************************/ /** * @file xgpio.c -* @addtogroup gpio_v4_2 +* @addtogroup gpio_v4_3 * @{ * * The implementation of the XGpio driver's basic functionality. See xgpio.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xgpio.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xgpio.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio.h index fc3f0bd33..582d94a76 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xgpio.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio.h @@ -32,7 +32,7 @@ /*****************************************************************************/ /** * @file xgpio.h -* @addtogroup gpio_v4_2 +* @addtogroup gpio_v4_3 * @{ * @details * diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_extra.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_extra.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_extra.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_extra.c index 219952678..5ce0b58e9 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_extra.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_extra.c @@ -32,7 +32,7 @@ /*****************************************************************************/ /** * @file xgpio_extra.c -* @addtogroup gpio_v4_2 +* @addtogroup gpio_v4_3 * @{ * * The implementation of the XGpio driver's advanced discrete functions. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_g.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_g.c similarity index 86% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_g.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_g.c index 547585f78..57aa942dc 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_g.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_g.c @@ -5,7 +5,7 @@ * Version: * DO NOT EDIT. * -* Copyright (C) 2010-2017 Xilinx, Inc. All Rights Reserved.* +* Copyright (C) 2010-2018 Xilinx, Inc. All Rights Reserved.* *Permission is hereby granted, free of charge, to any person obtaining a copy *of this software and associated documentation files (the Software), to deal *in the Software without restriction, including without limitation the rights @@ -57,6 +57,18 @@ XGpio_Config XGpio_ConfigTable[XPAR_XGPIO_NUM_INSTANCES] = XPAR_AXI_GPIO_1_BASEADDR, XPAR_AXI_GPIO_1_INTERRUPT_PRESENT, XPAR_AXI_GPIO_1_IS_DUAL + }, + { + XPAR_AXI_GPIO_2_DEVICE_ID, + XPAR_AXI_GPIO_2_BASEADDR, + XPAR_AXI_GPIO_2_INTERRUPT_PRESENT, + XPAR_AXI_GPIO_2_IS_DUAL + }, + { + XPAR_AXI_GPIO_3_DEVICE_ID, + XPAR_AXI_GPIO_3_BASEADDR, + XPAR_AXI_GPIO_3_INTERRUPT_PRESENT, + XPAR_AXI_GPIO_3_IS_DUAL } }; diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_i.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_i.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_i.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_i.h index 50f59baa7..0e64915e9 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_i.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_i.h @@ -32,7 +32,7 @@ /******************************************************************************/ /** * @file xgpio_i.h -* @addtogroup gpio_v4_2 +* @addtogroup gpio_v4_3 * @{ * * This header file contains internal identifiers, which are those shared diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_intr.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_intr.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_intr.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_intr.c index 271bb765a..887932a2a 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_intr.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_intr.c @@ -32,7 +32,7 @@ /*****************************************************************************/ /** * @file xgpio_intr.c -* @addtogroup gpio_v4_2 +* @addtogroup gpio_v4_3 * @{ * * Implements GPIO interrupt processing functions for the XGpio driver. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xgpio_l.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_l.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xgpio_l.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_l.h index 9c88aba2e..153fdfdf1 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xgpio_l.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_l.h @@ -33,7 +33,7 @@ /** * * @file xgpio_l.h -* @addtogroup gpio_v4_2 +* @addtogroup gpio_v4_3 * @{ * * This header file contains identifiers and driver functions (or diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_selftest.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_selftest.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_selftest.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_selftest.c index 77982e35d..8b1d75fe6 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_selftest.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_selftest.c @@ -32,7 +32,7 @@ /*****************************************************************************/ /** * @file xgpio_selftest.c -* @addtogroup gpio_v4_2 +* @addtogroup gpio_v4_3 * @{ * * The implementation of the XGpio driver's self test function. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_sinit.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_sinit.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_sinit.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_sinit.c index e61de8412..4d825b3eb 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_sinit.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpio_v4_3/src/xgpio_sinit.c @@ -32,7 +32,7 @@ /*****************************************************************************/ /** * @file xgpio_sinit.c -* @addtogroup gpio_v4_2 +* @addtogroup gpio_v4_3 * @{ * * The implementation of the XGpio driver's static initialzation diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/Makefile b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/Makefile similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/Makefile rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/Makefile diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/xgpiops.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/xgpiops.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/xgpiops.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/xgpiops.c index 90eedb87d..7b6fe2e46 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/xgpiops.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/xgpiops.c @@ -33,7 +33,7 @@ /** * * @file xgpiops.c -* @addtogroup gpiops_v3_1 +* @addtogroup gpiops_v3_3 * @{ * * The XGpioPs driver. Functions in this file are the minimum required functions diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xgpiops.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/xgpiops.h similarity index 95% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xgpiops.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/xgpiops.h index 367380656..fda562d91 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xgpiops.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/xgpiops.h @@ -1,3 +1,4 @@ + /****************************************************************************** * * Copyright (C) 2010 - 2015 Xilinx, Inc. All rights reserved. @@ -33,7 +34,7 @@ /** * * @file xgpiops.h -* @addtogroup gpiops_v3_1 +* @addtogroup gpiops_v3_3 * @{ * @details * @@ -99,7 +100,13 @@ * 3.1 kvn 04/13/15 Add support for Zynq Ultrascale+ MP. CR# 856980. * ms 03/17/17 Added readme.txt file in examples folder for doxygen * generation. -* +* ms 04/05/17 Added tabspace for return statements in functions of +* gpiops examples for proper documentation while +* generating doxygen. +* 3.3 ms 04/17/17 Added notes about gpio input and output pin description +* for zcu102 and zc702 boards in polled and interrupt +* example, configured Interrupt pin to input pin for +* proper functioning of interrupt example. * </pre> * ******************************************************************************/ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/xgpiops_g.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/xgpiops_g.c similarity index 96% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/xgpiops_g.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/xgpiops_g.c index 44ac94fc5..1a24fb0d0 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/xgpiops_g.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/xgpiops_g.c @@ -5,7 +5,7 @@ * Version: * DO NOT EDIT. * -* Copyright (C) 2010-2017 Xilinx, Inc. All Rights Reserved.* +* Copyright (C) 2010-2018 Xilinx, Inc. All Rights Reserved.* *Permission is hereby granted, free of charge, to any person obtaining a copy *of this software and associated documentation files (the Software), to deal *in the Software without restriction, including without limitation the rights diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/xgpiops_hw.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/xgpiops_hw.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/xgpiops_hw.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/xgpiops_hw.c index d7a5e00f0..8961c4287 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/xgpiops_hw.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/xgpiops_hw.c @@ -33,7 +33,7 @@ /** * * @file xgpiops_hw.c -* @addtogroup gpiops_v3_1 +* @addtogroup gpiops_v3_3 * @{ * * This file contains low level GPIO functions. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/xgpiops_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/xgpiops_hw.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/xgpiops_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/xgpiops_hw.h index 81e8d6a9f..ff0190675 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/xgpiops_hw.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/xgpiops_hw.h @@ -33,7 +33,7 @@ /** * * @file xgpiops_hw.h -* @addtogroup gpiops_v3_1 +* @addtogroup gpiops_v3_3 * @{ * * This header file contains the identifiers and basic driver functions (or diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/xgpiops_intr.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/xgpiops_intr.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/xgpiops_intr.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/xgpiops_intr.c index f69a71828..a8b0a5626 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/xgpiops_intr.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/xgpiops_intr.c @@ -33,7 +33,7 @@ /** * * @file xgpiops_intr.c -* @addtogroup gpiops_v3_1 +* @addtogroup gpiops_v3_3 * @{ * * This file contains functions related to GPIO interrupt handling. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/xgpiops_selftest.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/xgpiops_selftest.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/xgpiops_selftest.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/xgpiops_selftest.c index da1973a2d..378524c14 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/xgpiops_selftest.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/xgpiops_selftest.c @@ -33,7 +33,7 @@ /** * * @file xgpiops_selftest.c -* @addtogroup gpiops_v3_1 +* @addtogroup gpiops_v3_3 * @{ * * This file contains a diagnostic self-test function for the XGpioPs driver. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/xgpiops_sinit.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/xgpiops_sinit.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/xgpiops_sinit.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/xgpiops_sinit.c index 2ca008373..4cc0c390f 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/gpiops_v3_2/src/xgpiops_sinit.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/gpiops_v3_3/src/xgpiops_sinit.c @@ -33,7 +33,7 @@ /** * * @file xgpiops_sinit.c -* @addtogroup gpiops_v3_1 +* @addtogroup gpiops_v3_3 * @{ * * This file contains the implementation of the XGpioPs driver's static diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/Makefile b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/Makefile similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/Makefile rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/Makefile diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps.c index 1c6819152..9546b5490 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps.c @@ -33,7 +33,7 @@ /** * * @file xiicps.c -* @addtogroup iicps_v3_0 +* @addtogroup iicps_v3_7 * @{ * * Contains implementation of required functions for the XIicPs driver. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps.h similarity index 98% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps.h index a7b956f64..d3713de47 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps.h @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2010 - 2016 Xilinx, Inc. All rights reserved. +* Copyright (C) 2010 - 2018 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -33,7 +33,7 @@ /** * * @file xiicps.h -* @addtogroup iicps_v3_0 +* @addtogroup iicps_v3_7 * @{ * @details * @@ -186,6 +186,8 @@ * 3.3 kvn 05/05/16 Modified latest code for MISRA-C:2012 Compliance. * ms 03/17/17 Added readme.txt file in examples folder for doxygen * generation. +* 3.7 ask 04/17/18 Updated the Eeprom scanning mechanism +* as per the other examples (CR#997545) * * </pre> * diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_g.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_g.c similarity index 97% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_g.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_g.c index f1fff951b..f98336c62 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_g.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_g.c @@ -5,7 +5,7 @@ * Version: * DO NOT EDIT. * -* Copyright (C) 2010-2017 Xilinx, Inc. All Rights Reserved.* +* Copyright (C) 2010-2018 Xilinx, Inc. All Rights Reserved.* *Permission is hereby granted, free of charge, to any person obtaining a copy *of this software and associated documentation files (the Software), to deal *in the Software without restriction, including without limitation the rights diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_hw.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_hw.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_hw.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_hw.c index a1dba8e62..ce81d92ab 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_hw.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_hw.c @@ -33,7 +33,7 @@ /** * * @file xiicps_hw.c -* @addtogroup iicps_v3_0 +* @addtogroup iicps_v3_7 * @{ * * Contains implementation of required functions for providing the reset sequence diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xiicps_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_hw.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xiicps_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_hw.h index 3b00cf8b1..e9d63ec8f 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xiicps_hw.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_hw.h @@ -33,7 +33,7 @@ /** * * @file xiicps_hw.h -* @addtogroup iicps_v3_0 +* @addtogroup iicps_v3_7 * @{ * * This header file contains the hardware definition for an IIC device. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_intr.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_intr.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_intr.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_intr.c index 5231049c7..6dccff4c8 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_intr.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_intr.c @@ -33,7 +33,7 @@ /** * * @file xiicps_intr.c -* @addtogroup iicps_v3_0 +* @addtogroup iicps_v3_7 * @{ * * Contains functions of the XIicPs driver for interrupt-driven transfers. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_master.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_master.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_master.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_master.c index 99890afaa..555420910 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_master.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_master.c @@ -33,7 +33,7 @@ /** * * @file xiicps_master.c -* @addtogroup iicps_v3_0 +* @addtogroup iicps_v3_7 * @{ * * Handles master mode transfers. @@ -63,7 +63,8 @@ * 02/18/15 Implemented larger data transfer using repeated start * in Zynq UltraScale MP. * 3.3 kvn 05/05/16 Modified latest code for MISRA-C:2012 Compliance. -* +* 3.6 ask 09/03/18 In XIicPs_MasterRecvPolled, set transfer size register +* before slave address. Fix for CR996440. * </pre> * ******************************************************************************/ @@ -424,7 +425,6 @@ s32 XIicPs_MasterRecvPolled(XIicPs *InstancePtr, u8 *MsgPtr, IntrStatusReg = XIicPs_ReadReg(BaseAddr, XIICPS_ISR_OFFSET); XIicPs_WriteReg(BaseAddr, XIICPS_ISR_OFFSET, IntrStatusReg); - XIicPs_WriteReg(BaseAddr, XIICPS_ADDR_OFFSET, SlaveAddr); /* * Set up the transfer size register so the slave knows how much @@ -440,6 +440,9 @@ s32 XIicPs_MasterRecvPolled(XIicPs *InstancePtr, u8 *MsgPtr, ByteCountVar); } + + XIicPs_WriteReg(BaseAddr, XIICPS_ADDR_OFFSET, SlaveAddr); + /* * Intrs keeps all the error-related interrupts. */ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_options.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_options.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_options.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_options.c index 1ebd78673..4ef69a1a0 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_options.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_options.c @@ -33,7 +33,7 @@ /** * * @file xiicps_options.c -* @addtogroup iicps_v3_0 +* @addtogroup iicps_v3_7 * @{ * * Contains functions for the configuration of the XIccPs driver. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_selftest.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_selftest.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_selftest.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_selftest.c index dd57a1a51..3e68cb62a 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_selftest.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_selftest.c @@ -33,7 +33,7 @@ /** * * @file xiicps_selftest.c -* @addtogroup iicps_v3_0 +* @addtogroup iicps_v3_7 * @{ * * This component contains the implementation of selftest functions for the diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_sinit.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_sinit.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_sinit.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_sinit.c index 7d7dadaa8..a5724c246 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_sinit.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_sinit.c @@ -33,7 +33,7 @@ /** * * @file xiicps_sinit.c -* @addtogroup iicps_v3_0 +* @addtogroup iicps_v3_7 * @{ * * The implementation of the XIicPs component's static initialization diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_slave.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_slave.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_slave.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_slave.c index fef640b77..fb8919201 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/iicps_v3_5/src/xiicps_slave.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/iicps_v3_7/src/xiicps_slave.c @@ -32,7 +32,7 @@ /*****************************************************************************/ /** * @file xiicps_slave.c -* @addtogroup iicps_v3_0 +* @addtogroup iicps_v3_7 * @{ * * Handles slave transfers diff --git a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_recorder_v1_0/src/Makefile b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src/Makefile similarity index 100% rename from quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_recorder_v1_0/src/Makefile rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src/Makefile diff --git a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_recorder_v1_0/src/pwm_recorder.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src/pwm_recorder.c similarity index 100% rename from quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_recorder_v1_0/src/pwm_recorder.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src/pwm_recorder.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/pwm_recorder.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src/pwm_recorder.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/pwm_recorder.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src/pwm_recorder.h diff --git a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_recorder_v1_0/src/pwm_recorder_selftest.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src/pwm_recorder_selftest.c similarity index 100% rename from quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_recorder_v1_0/src/pwm_recorder_selftest.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/pwm_recorder_v1_0/src/pwm_recorder_selftest.c diff --git a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_signal_out_v1_0/src/Makefile b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src/Makefile similarity index 100% rename from quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_signal_out_v1_0/src/Makefile rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src/Makefile diff --git a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_signal_out_v1_0/src/pwm_signal_out.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src/pwm_signal_out.c similarity index 100% rename from quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_signal_out_v1_0/src/pwm_signal_out.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src/pwm_signal_out.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/pwm_signal_out.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src/pwm_signal_out.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/pwm_signal_out.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src/pwm_signal_out.h diff --git a/quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_signal_out_v1_0/src/pwm_signal_out_selftest.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src/pwm_signal_out_selftest.c similarity index 100% rename from quad/xsdk_workspace_vivado/quad_wrapper_hw_platform_0/drivers/pwm_signal_out_v1_0/src/pwm_signal_out_selftest.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/pwm_signal_out_v1_0/src/pwm_signal_out_selftest.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/Makefile b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/Makefile similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/Makefile rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/Makefile diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/xqspips.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/xqspips.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/xqspips.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/xqspips.c index 086b9887e..c33322c73 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/xqspips.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/xqspips.c @@ -33,7 +33,7 @@ /** * * @file xqspips.c -* @addtogroup qspips_v3_2 +* @addtogroup qspips_v3_4 * @{ * * Contains implements the interface functions of the XQspiPs driver. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/xqspips.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/xqspips.h similarity index 98% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/xqspips.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/xqspips.h index 671f3f636..139ce4d38 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/xqspips.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/xqspips.h @@ -33,7 +33,7 @@ /** * * @file xqspips.h -* @addtogroup qspips_v3_2 +* @addtogroup qspips_v3_4 * @{ * @details * @@ -275,6 +275,12 @@ * to remove compilation warnings. CR# 868893. * ms 03/17/17 Added readme.txt file in examples folder for doxygen * generation. +* ms 04/05/17 Modified Comment lines in functions of qspips +* examples to recognize it as documentation block +* and modified filename tag in +* xqspips_dual_flash_stack_lqspi_example.c to include it in +* doxygen examples. +* 3.4 nsk 31/07/17 Added QSPI_BUS_WIDTH parameter in xparameters.h file * * </pre> * diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/xqspips_g.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/xqspips_g.c similarity index 96% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/xqspips_g.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/xqspips_g.c index 6723db11f..34f07519d 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/xqspips_g.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/xqspips_g.c @@ -5,7 +5,7 @@ * Version: * DO NOT EDIT. * -* Copyright (C) 2010-2017 Xilinx, Inc. All Rights Reserved.* +* Copyright (C) 2010-2018 Xilinx, Inc. All Rights Reserved.* *Permission is hereby granted, free of charge, to any person obtaining a copy *of this software and associated documentation files (the Software), to deal *in the Software without restriction, including without limitation the rights diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/xqspips_hw.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/xqspips_hw.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/xqspips_hw.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/xqspips_hw.c index 47cf6d4c9..1817b0780 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/xqspips_hw.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/xqspips_hw.c @@ -33,7 +33,7 @@ /** * * @file xqspips_hw.c -* @addtogroup qspips_v3_2 +* @addtogroup qspips_v3_4 * @{ * * Contains low level functions, primarily reset related. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/xqspips_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/xqspips_hw.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/xqspips_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/xqspips_hw.h index 404afed94..96c867ad3 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/xqspips_hw.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/xqspips_hw.h @@ -33,7 +33,7 @@ /** * * @file xqspips_hw.h -* @addtogroup qspips_v3_2 +* @addtogroup qspips_v3_4 * @{ * * This header file contains the identifiers and basic HW access driver diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/xqspips_options.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/xqspips_options.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/xqspips_options.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/xqspips_options.c index 911391ccd..1cd43f48c 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/xqspips_options.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/xqspips_options.c @@ -33,7 +33,7 @@ /** * * @file xqspips_options.c -* @addtogroup qspips_v3_2 +* @addtogroup qspips_v3_4 * @{ * * Contains functions for the configuration of the XQspiPs driver component. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/xqspips_selftest.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/xqspips_selftest.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/xqspips_selftest.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/xqspips_selftest.c index 309b36e2b..4c44cdff2 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/xqspips_selftest.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/xqspips_selftest.c @@ -33,7 +33,7 @@ /** * * @file xqspips_selftest.c -* @addtogroup qspips_v3_2 +* @addtogroup qspips_v3_4 * @{ * * This file contains the implementation of selftest function for the QSPI diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/xqspips_sinit.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/xqspips_sinit.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/xqspips_sinit.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/xqspips_sinit.c index be154be99..929ecd832 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/qspips_v3_3/src/xqspips_sinit.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/qspips_v3_4/src/xqspips_sinit.c @@ -33,7 +33,7 @@ /** * * @file xqspips_sinit.c -* @addtogroup qspips_v3_2 +* @addtogroup qspips_v3_4 * @{ * * The implementation of the XQspiPs component's static initialization diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/Makefile b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/Makefile similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/Makefile rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/Makefile diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/xscugic.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/xscugic.c similarity index 93% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/xscugic.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/xscugic.c index 8c83a8ad3..f6afc0e5a 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/xscugic.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/xscugic.c @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2010 - 2017 Xilinx, Inc. All rights reserved. +* Copyright (C) 2010 - 2018 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -33,7 +33,7 @@ /** * * @file xscugic.c -* @addtogroup scugic_v3_1 +* @addtogroup scugic_v3_8 * @{ * * Contains required functions for the XScuGic driver for the Interrupt @@ -114,6 +114,10 @@ * kvn 02/17/17 Add support for changing GIC CPU master at run time. * kvn 02/28/17 Make the CpuId as static variable and Added new * XScugiC_GetCpuId to access CpuId. +* 3.9 mus 02/21/18 Added new API's XScuGic_UnmapAllInterruptsFromCpu and +* XScuGic_InterruptUnmapFromCpu, These API's can be used +* by applications to unmap specific/all interrupts from +* target CPU. It fixes CR#992490. * * </pre> * @@ -836,6 +840,76 @@ void XScuGic_InterruptMaptoCpu(XScuGic *InstancePtr, u8 Cpu_Id, u32 Int_Id) } /****************************************************************************/ /** +* Unmaps specific SPI interrupt from the target CPU +* +* @param InstancePtr is a pointer to the instance to be worked on. +* @param Cpu_Id is a CPU number from which the interrupt has to be +* unmapped +* @param Int_Id is the IRQ source number to modify +* +* @return None. +* +* @note None +* +*****************************************************************************/ +void XScuGic_InterruptUnmapFromCpu(XScuGic *InstancePtr, u8 Cpu_Id, u32 Int_Id) +{ + u32 RegValue; + u8 BitPos; + + Xil_AssertVoid(InstancePtr != NULL); + + RegValue = XScuGic_DistReadReg(InstancePtr, + XSCUGIC_SPI_TARGET_OFFSET_CALC(Int_Id)); + + /* + * Identify bit position corresponding to Int_Id and Cpu_Id, + * in interrupt target register and clear it + */ + BitPos = ((Int_Id % 4U) * 8U) + Cpu_Id; + RegValue &= (~ ( 1U << BitPos )); + XScuGic_DistWriteReg(InstancePtr, + XSCUGIC_SPI_TARGET_OFFSET_CALC(Int_Id), + RegValue); +} +/****************************************************************************/ +/** +* Unmaps all SPI interrupts from the target CPU +* +* @param InstancePtr is a pointer to the instance to be worked on. +* @param Cpu_Id is a CPU number from which the interrupts has to be +* unmapped +* +* @return None. +* +* @note None +* +*****************************************************************************/ +void XScuGic_UnmapAllInterruptsFromCpu(XScuGic *InstancePtr, u8 Cpu_Id) +{ + u32 Int_Id; + u32 Target_Cpu; + u32 LocalCpuID = (1U << Cpu_Id); + + Xil_AssertVoid(InstancePtr != NULL); + + LocalCpuID |= LocalCpuID << 8U; + LocalCpuID |= LocalCpuID << 16U; + + for (Int_Id = 32U; Int_Id<XSCUGIC_MAX_NUM_INTR_INPUTS;Int_Id=Int_Id+4U) + { + + Target_Cpu = XScuGic_DistReadReg(InstancePtr, + XSCUGIC_SPI_TARGET_OFFSET_CALC(Int_Id)); + /* Remove LocalCpuID from interrupt target register */ + Target_Cpu &= (~LocalCpuID); + XScuGic_DistWriteReg(InstancePtr, + XSCUGIC_SPI_TARGET_OFFSET_CALC(Int_Id), Target_Cpu); + + } +} +/****************************************************************************/ +/** * It checks if the interrupt target register contains all interrupts to be * targeted for current CPU. If they are programmed to be forwarded to current * cpu, this API disable all interrupts and disable GIC distributor. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/xscugic.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/xscugic.h similarity index 92% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/xscugic.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/xscugic.h index fb6624239..e22ee5bc2 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/xscugic.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/xscugic.h @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2010 - 2015 Xilinx, Inc. All rights reserved. +* Copyright (C) 2010 - 2018 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -33,7 +33,7 @@ /** * * @file xscugic.h -* @addtogroup scugic_v3_1 +* @addtogroup scugic_v3_8 * @{ * @details * @@ -166,6 +166,19 @@ * XScugiC_GetCpuId to access CpuId. * ms 03/17/17 Added readme.txt file in examples folder for doxygen * generation. +* 3.7 ms 04/11/17 Modified tcl file to add suffix U for all macro +* definitions of scugic in xparameters.h +* 3.8 mus 07/05/17 Updated scugic.tcl to add support for intrrupts connected +* through util_reduced_vector IP(OR gate) +* mus 07/05/17 Updated xdefine_zynq_canonical_xpars proc to initialize +* the HandlerTable in XScuGic_ConfigTable to 0, it removes +* the compilation warning in xscugic_g.c. Fix for CR#978736. +* mus 07/25/17 Updated xdefine_gic_params proc to export correct canonical +* definitions for pl to ps interrupts.Fix for CR#980534 +* 3.9 mus 02/21/18 Added new API's XScuGic_UnmapAllInterruptsFromCpu and +* XScuGic_InterruptUnmapFromCpu, These API's can be used +* by applications to unmap specific/all interrupts from +* target CPU. * * </pre> * @@ -331,6 +344,8 @@ void XScuGic_GetPriorityTriggerType(XScuGic *InstancePtr, u32 Int_Id, void XScuGic_SetPriorityTriggerType(XScuGic *InstancePtr, u32 Int_Id, u8 Priority, u8 Trigger); void XScuGic_InterruptMaptoCpu(XScuGic *InstancePtr, u8 Cpu_Id, u32 Int_Id); +void XScuGic_InterruptUnmapFromCpu(XScuGic *InstancePtr, u8 Cpu_Id, u32 Int_Id); +void XScuGic_UnmapAllInterruptsFromCpu(XScuGic *InstancePtr, u8 Cpu_Id); void XScuGic_Stop(XScuGic *InstancePtr); void XScuGic_SetCpuID(u32 CpuCoreId); u32 XScuGic_GetCpuID(void); diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/xscugic_g.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/xscugic_g.c similarity index 92% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/xscugic_g.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/xscugic_g.c index e062f1d1f..528e09902 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/xscugic_g.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/xscugic_g.c @@ -5,7 +5,7 @@ * Version: * DO NOT EDIT. * -* Copyright (C) 2010-2017 Xilinx, Inc. All Rights Reserved.* +* Copyright (C) 2010-2018 Xilinx, Inc. All Rights Reserved.* *Permission is hereby granted, free of charge, to any person obtaining a copy *of this software and associated documentation files (the Software), to deal *in the Software without restriction, including without limitation the rights @@ -49,7 +49,8 @@ XScuGic_Config XScuGic_ConfigTable[XPAR_XSCUGIC_NUM_INSTANCES] = { XPAR_PS7_SCUGIC_0_DEVICE_ID, XPAR_PS7_SCUGIC_0_BASEADDR, - XPAR_PS7_SCUGIC_0_DIST_BASEADDR + XPAR_PS7_SCUGIC_0_DIST_BASEADDR, + {{0}} /**< Initialize the HandlerTable to 0 */ } }; diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/xscugic_hw.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/xscugic_hw.c similarity index 89% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/xscugic_hw.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/xscugic_hw.c index 80feb4d11..6604e3a55 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/xscugic_hw.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/xscugic_hw.c @@ -33,7 +33,7 @@ /** * * @file xscugic_hw.c -* @addtogroup scugic_v3_1 +* @addtogroup scugic_v3_8 * @{ * * This file contains low-level driver functions that can be used to access the @@ -65,6 +65,10 @@ * 3.6 kvn 02/17/17 Add support for changing GIC CPU master at run time. * kvn 02/28/17 Make the CpuId as static variable and Added new * XScugiC_GetCpuId to access CpuId. +* 3.9 mus 02/21/18 Added new API's XScuGic_InterruptUnmapFromCpuByDistAddr +* and XScuGic_UnmapAllInterruptsFromCpuByDistAddr, These +* API's can be used by applications to unmap specific/all +* interrupts from target CPU. It fixes CR#992490. * * </pre> * @@ -571,4 +575,75 @@ void XScuGic_GetPriTrigTypeByDistAddr(u32 DistBaseAddress, u32 Int_Id, *Trigger = (u8)(RegValue & XSCUGIC_INT_CFG_MASK); } + +/****************************************************************************/ +/** +* Unmaps specific SPI interrupt from the target CPU +* +* @param DistBaseAddress is the device base address +* @param Cpu_Id is a CPU number from which the interrupt has to be +* unmapped +* @param Int_Id is the IRQ source number to modify +* +* @return None. +* +* @note None +* +*****************************************************************************/ +void XScuGic_InterruptUnmapFromCpuByDistAddr(u32 DistBaseAddress, + u8 Cpu_Id, u32 Int_Id) +{ + u32 RegValue; + u8 BitPos; + + Xil_AssertVoid(Int_Id < XSCUGIC_MAX_NUM_INTR_INPUTS); + + RegValue = XScuGic_ReadReg(DistBaseAddress, + XSCUGIC_SPI_TARGET_OFFSET_CALC(Int_Id)); + + /* + * Identify bit position corresponding to Int_Id and Cpu_Id, + * in interrupt target register and clear it + */ + BitPos = ((Int_Id % 4U) * 8U) + Cpu_Id; + RegValue &= (~ ( 1U << BitPos )); + XScuGic_WriteReg(DistBaseAddress, + XSCUGIC_SPI_TARGET_OFFSET_CALC(Int_Id), RegValue); +} + +/****************************************************************************/ +/** +* Unmaps all SPI interrupts from the target CPU +* +* @param DistBaseAddress is the device base address +* @param Cpu_Id is a CPU number from which the interrupts has to be +* unmapped +* +* @return None. +* +* @note None +* +*****************************************************************************/ +void XScuGic_UnmapAllInterruptsFromCpuByDistAddr(u32 DistBaseAddress, + u8 Cpu_Id) +{ + u32 Int_Id; + u32 Target_Cpu; + u32 LocalCpuID = (1U << Cpu_Id); + + LocalCpuID |= LocalCpuID << 8U; + LocalCpuID |= LocalCpuID << 16U; + + for (Int_Id = 32U; Int_Id<XSCUGIC_MAX_NUM_INTR_INPUTS;Int_Id=Int_Id+4U) + { + + Target_Cpu = XScuGic_ReadReg(DistBaseAddress, + XSCUGIC_SPI_TARGET_OFFSET_CALC(Int_Id)); + /* Remove LocalCpuID from interrupt target register */ + Target_Cpu &= (~LocalCpuID); + XScuGic_WriteReg(DistBaseAddress, + XSCUGIC_SPI_TARGET_OFFSET_CALC(Int_Id), Target_Cpu); + + } +} /** @} */ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/xscugic_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/xscugic_hw.h similarity index 98% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/xscugic_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/xscugic_hw.h index 5eaa633e3..08e65f456 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/xscugic_hw.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/xscugic_hw.h @@ -33,7 +33,7 @@ /** * * @file xscugic_hw.h -* @addtogroup scugic_v3_1 +* @addtogroup scugic_v3_8 * @{ * * This header file contains identifiers and HW access functions (or @@ -72,6 +72,10 @@ * 3.0 kvn 02/13/14 Modified code for MISRA-C:2012 compliance. * 3.2 pkp 11/09/15 Corrected the interrupt processsor target mask value * for CPU interface 2 i.e. XSCUGIC_SPI_CPU2_MASK +* 3.9 mus 02/21/18 Added new API's XScuGic_InterruptUnmapFromCpuByDistAddr +* and XScuGic_UnmapAllInterruptsFromCpuByDistAddr, These +* API's can be used by applications to unmap specific/all +* interrupts from target CPU. It fixes CR#992490. * </pre> * ******************************************************************************/ @@ -633,6 +637,10 @@ void XScuGic_SetPriTrigTypeByDistAddr(u32 DistBaseAddress, u32 Int_Id, u8 Priority, u8 Trigger); void XScuGic_GetPriTrigTypeByDistAddr(u32 DistBaseAddress, u32 Int_Id, u8 *Priority, u8 *Trigger); +void XScuGic_InterruptUnmapFromCpuByDistAddr(u32 DistBaseAddress, + u8 Cpu_Id, u32 Int_Id); +void XScuGic_UnmapAllInterruptsFromCpuByDistAddr(u32 DistBaseAddress, + u8 Cpu_Id); /************************** Variable Definitions *****************************/ #ifdef __cplusplus } diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/xscugic_intr.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/xscugic_intr.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/xscugic_intr.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/xscugic_intr.c index d05a51c5e..d82a60b9e 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/xscugic_intr.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/xscugic_intr.c @@ -33,7 +33,7 @@ /** * * @file xscugic_intr.c -* @addtogroup scugic_v3_1 +* @addtogroup scugic_v3_8 * @{ * * This file contains the interrupt processing for the driver for the Xilinx diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/xscugic_selftest.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/xscugic_selftest.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/xscugic_selftest.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/xscugic_selftest.c index 47620d644..7b1028f9f 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/xscugic_selftest.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/xscugic_selftest.c @@ -33,7 +33,7 @@ /** * * @file xscugic_selftest.c -* @addtogroup scugic_v3_1 +* @addtogroup scugic_v3_8 * @{ * * Contains diagnostic self-test functions for the XScuGic driver. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/xscugic_sinit.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/xscugic_sinit.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/xscugic_sinit.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/xscugic_sinit.c index d30390ab8..842f31812 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scugic_v3_6/src/xscugic_sinit.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scugic_v3_9/src/xscugic_sinit.c @@ -33,7 +33,7 @@ /** * * @file xscugic_sinit.c -* @addtogroup scugic_v3_1 +* @addtogroup scugic_v3_8 * @{ * * Contains static init functions for the XScuGic driver for the Interrupt diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/Makefile b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/Makefile similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/Makefile rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/Makefile diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer_g.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer_g.c similarity index 96% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer_g.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer_g.c index 9d81780fc..1634bb77c 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer_g.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer_g.c @@ -5,7 +5,7 @@ * Version: * DO NOT EDIT. * -* Copyright (C) 2010-2017 Xilinx, Inc. All Rights Reserved.* +* Copyright (C) 2010-2018 Xilinx, Inc. All Rights Reserved.* *Permission is hereby granted, free of charge, to any person obtaining a copy *of this software and associated documentation files (the Software), to deal *in the Software without restriction, including without limitation the rights diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer_hw.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer_hw.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer_selftest.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer_selftest.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer_selftest.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer_selftest.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer_sinit.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer_sinit.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer_sinit.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scutimer_v2_1/src/xscutimer_sinit.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/Makefile b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/Makefile similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/Makefile rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/Makefile diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt.c index 8e9788551..cd9e15d2c 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt.c @@ -1,4 +1,3 @@ -/* $Id: xscuwdt.c,v 1.1.2.1 2011/01/20 04:04:40 sadanan Exp $ */ /****************************************************************************** * * Copyright (C) 2010 - 2015 Xilinx, Inc. All rights reserved. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt_g.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt_g.c similarity index 96% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt_g.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt_g.c index ba21a50bf..14fbf75db 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt_g.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt_g.c @@ -5,7 +5,7 @@ * Version: * DO NOT EDIT. * -* Copyright (C) 2010-2017 Xilinx, Inc. All Rights Reserved.* +* Copyright (C) 2010-2018 Xilinx, Inc. All Rights Reserved.* *Permission is hereby granted, free of charge, to any person obtaining a copy *of this software and associated documentation files (the Software), to deal *in the Software without restriction, including without limitation the rights diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt_hw.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt_hw.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt_selftest.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt_selftest.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt_selftest.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt_selftest.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt_sinit.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt_sinit.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt_sinit.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/scuwdt_v2_1/src/xscuwdt_sinit.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2/src/Makefile b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5/src/Makefile similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2/src/Makefile rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5/src/Makefile diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2/src/xsdps.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5/src/xsdps.c similarity index 88% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2/src/xsdps.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5/src/xsdps.c index 38b11168a..8b1f11382 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2/src/xsdps.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5/src/xsdps.c @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2013 - 2016 Xilinx, Inc. All rights reserved. +* Copyright (C) 2013 - 2018 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -33,7 +33,7 @@ /** * * @file xsdps.c -* @addtogroup sdps_v2_5 +* @addtogroup sdps_v3_5 * @{ * * Contains the interface functions of the XSdPs driver. @@ -78,6 +78,19 @@ * sk 02/01/17 Added HSD and DDR mode support for eMMC. * vns 02/09/17 Added ARMA53_32 support for ZynqMP CR#968397 * sk 03/20/17 Add support for EL1 non-secure mode. +* 3.3 mn 05/17/17 Add support for 64bit DMA addressing +* mn 07/17/17 Add support for running SD at 200MHz +* mn 07/26/17 Fixed compilation warnings +* mn 08/07/17 Modify driver to support 64-bit DMA in arm64 only +* mn 08/17/17 Added CCI support for A53 and disabled data cache +* operations when it is enabled. +* mn 08/22/17 Updated for Word Access System support +* mn 09/06/17 Resolved compilation errors with IAR toolchain +* mn 09/26/17 Added UHS_MODE_ENABLE macro to enable UHS mode +* 3.4 mn 10/17/17 Use different commands for single and multi block +* transfers +* mn 03/02/18 Move UHS macro check to SD card initialization routine +* 3.5 mn 04/18/18 Resolve compilation warnings for sdps driver * </pre> * ******************************************************************************/ @@ -94,6 +107,7 @@ #define XSDPS_CMD1_HIGH_VOL 0x00FF8000U #define XSDPS_CMD1_DUAL_VOL 0x00FF8010U #define HIGH_SPEED_SUPPORT 0x2U +#define UHS_SDR50_SUPPORT 0x4U #define WIDTH_4_BIT_SUPPORT 0x4U #define SD_CLK_25_MHZ 25000000U #define SD_CLK_19_MHZ 19000000U @@ -109,9 +123,7 @@ #define EXT_CSD_DEVICE_TYPE_SDR_1V8_HS200 0x10U #define EXT_CSD_DEVICE_TYPE_SDR_1V2_HS200 0x20U #define CSD_SPEC_VER_3 0x3U - -/* Note: Remove this once fixed */ -#define UHS_BROKEN +#define SCR_SPEC_VER_3 0x80U /**************************** Type Definitions *******************************/ @@ -123,10 +135,9 @@ s32 XSdPs_CmdTransfer(XSdPs *InstancePtr, u32 Cmd, u32 Arg, u32 BlkCnt); void XSdPs_SetupADMA2DescTbl(XSdPs *InstancePtr, u32 BlkCnt, const u8 *Buff); extern s32 XSdPs_Uhs_ModeInit(XSdPs *InstancePtr, u8 Mode); static s32 XSdPs_IdentifyCard(XSdPs *InstancePtr); -#ifndef UHS_BROKEN static s32 XSdPs_Switch_Voltage(XSdPs *InstancePtr); -#endif +u16 TransferMode; /*****************************************************************************/ /** * @@ -179,6 +190,7 @@ s32 XSdPs_CfgInitialize(XSdPs *InstancePtr, XSdPs_Config *ConfigPtr, InstancePtr->Config.BusWidth = ConfigPtr->BusWidth; InstancePtr->Config.BankNumber = ConfigPtr->BankNumber; InstancePtr->Config.HasEMIO = ConfigPtr->HasEMIO; + InstancePtr->Config.IsCacheCoherent = ConfigPtr->IsCacheCoherent; InstancePtr->SectorCount = 0; InstancePtr->Mode = XSDPS_DEFAULT_SPEED_MODE; InstancePtr->Config_TapDelay = NULL; @@ -257,10 +269,18 @@ s32 XSdPs_CfgInitialize(XSdPs *InstancePtr, XSdPs_Config *ConfigPtr, XSdPs_WriteReg8(InstancePtr->Config.BaseAddress, XSDPS_POWER_CTRL_OFFSET, PowerLevel | XSDPS_PC_BUS_PWR_MASK); + +#ifdef __aarch64__ /* Enable ADMA2 in 64bit mode. */ + XSdPs_WriteReg8(InstancePtr->Config.BaseAddress, + XSDPS_HOST_CTRL1_OFFSET, + XSDPS_HC_DMA_ADMA2_64_MASK); +#else + /* Enable ADMA2 in 32bit mode. */ XSdPs_WriteReg8(InstancePtr->Config.BaseAddress, XSDPS_HOST_CTRL1_OFFSET, XSDPS_HC_DMA_ADMA2_32_MASK); +#endif /* Enable all interrupt status except card interrupt initially */ XSdPs_WriteReg16(InstancePtr->Config.BaseAddress, @@ -281,10 +301,8 @@ s32 XSdPs_CfgInitialize(XSdPs *InstancePtr, XSdPs_Config *ConfigPtr, * Transfer mode register - default value * DMA enabled, block count enabled, data direction card to host(read) */ - XSdPs_WriteReg16(InstancePtr->Config.BaseAddress, - XSDPS_XFER_MODE_OFFSET, - XSDPS_TM_DMA_EN_MASK | XSDPS_TM_BLK_CNT_EN_MASK | - XSDPS_TM_DAT_DIR_SEL_MASK); + TransferMode = XSDPS_TM_DMA_EN_MASK | XSDPS_TM_BLK_CNT_EN_MASK | + XSDPS_TM_DAT_DIR_SEL_MASK; /* Set block size to 512 by default */ XSdPs_WriteReg16(InstancePtr->Config.BaseAddress, @@ -335,6 +353,10 @@ s32 XSdPs_SdCardInitialize(XSdPs *InstancePtr) Xil_AssertNonvoid(InstancePtr != NULL); Xil_AssertNonvoid(InstancePtr->IsReady == XIL_COMPONENT_IS_READY); +#ifndef UHS_MODE_ENABLE + InstancePtr->Config.BusWidth = XSDPS_WIDTH_4; +#endif + if ((InstancePtr->HC_Version != XSDPS_HC_SPEC_V3) || ((InstancePtr->Host_Caps & XSDPS_CAPS_SLOT_TYPE_MASK) != XSDPS_CAPS_EMB_SLOT)) { @@ -402,9 +424,17 @@ s32 XSdPs_SdCardInitialize(XSdPs *InstancePtr) goto RETURN_PATH; } - Arg = XSDPS_ACMD41_HCS | XSDPS_ACMD41_3V3 | (0x1FFU << 15U); - if (InstancePtr->HC_Version == XSDPS_HC_SPEC_V3) { - Arg |= XSDPS_OCR_S18; + Arg = XSDPS_ACMD41_HCS | XSDPS_ACMD41_3V3 | (0x1FFU << 15U); + /* + * There is no support to switch to 1.8V and use UHS mode on + * 1.0 silicon + */ + if ((InstancePtr->HC_Version == XSDPS_HC_SPEC_V3) && +#if defined (ARMR5) || (__aarch64__) || (ARMA53_32) || (PSU_PMU) + (XGetPSVersion_Info() > XPS_VERSION_1) && +#endif + (InstancePtr->Config.BusWidth == XSDPS_WIDTH_8)) { + Arg |= XSDPS_OCR_S18; } /* 0x40300000 - Host High Capacity support & 3.3V window */ @@ -426,19 +456,14 @@ s32 XSdPs_SdCardInitialize(XSdPs *InstancePtr) InstancePtr->HCS = 1U; } - /* There is no support to switch to 1.8V and use UHS mode on 1.0 silicon */ -#ifndef UHS_BROKEN - if (((RespOCR & XSDPS_OCR_S18) != 0U) && - (InstancePtr->Config.BusWidth == XSDPS_WIDTH_8)) { + if ((RespOCR & XSDPS_OCR_S18) != 0U) { InstancePtr->Switch1v8 = 1U; Status = XSdPs_Switch_Voltage(InstancePtr); if (Status != XST_SUCCESS) { Status = XST_FAILURE; goto RETURN_PATH; } - } -#endif /* CMD2 for Card ID */ Status = XSdPs_CmdTransfer(InstancePtr, CMD2, 0U, 0U); @@ -536,12 +561,13 @@ s32 XSdPs_CardInitialize(XSdPs *InstancePtr) { #ifdef __ICCARM__ #pragma data_alignment = 32 -static u8 ExtCsd[512]; + static u8 ExtCsd[512]; + u8 SCR[8] = { 0U }; #pragma data_alignment = 4 #else -static u8 ExtCsd[512] __attribute__ ((aligned(32))); + static u8 ExtCsd[512] __attribute__ ((aligned(32))); + u8 SCR[8] __attribute__ ((aligned(32))) = { 0U }; #endif - u8 SCR[8] = { 0U }; u8 ReadBuff[64] = { 0U }; s32 Status; u32 Arg; @@ -649,6 +675,66 @@ static u8 ExtCsd[512] __attribute__ ((aligned(32))); goto RETURN_PATH; } + if (((SCR[2] & SCR_SPEC_VER_3) != 0U) && + (ReadBuff[13] >= UHS_SDR50_SUPPORT) && + (InstancePtr->Config.BusWidth == XSDPS_WIDTH_8) && +#if defined (ARMR5) || (__aarch64__) || (ARMA53_32) || (PSU_PMU) + (XGetPSVersion_Info() > XPS_VERSION_1) && +#endif + (InstancePtr->Switch1v8 == 0U)) { + u16 CtrlReg, ClockReg; + + /* Stop the clock */ + CtrlReg = XSdPs_ReadReg16(InstancePtr->Config.BaseAddress, + XSDPS_CLK_CTRL_OFFSET); + CtrlReg &= ~(XSDPS_CC_SD_CLK_EN_MASK | XSDPS_CC_INT_CLK_EN_MASK); + XSdPs_WriteReg16(InstancePtr->Config.BaseAddress, XSDPS_CLK_CTRL_OFFSET, + CtrlReg); + + /* Enabling 1.8V in controller */ + CtrlReg = XSdPs_ReadReg16(InstancePtr->Config.BaseAddress, + XSDPS_HOST_CTRL2_OFFSET); + CtrlReg |= XSDPS_HC2_1V8_EN_MASK; + XSdPs_WriteReg16(InstancePtr->Config.BaseAddress, XSDPS_HOST_CTRL2_OFFSET, + CtrlReg); + + /* Wait minimum 5mSec */ + (void)usleep(5000U); + + /* Check for 1.8V signal enable bit is cleared by Host */ + CtrlReg = XSdPs_ReadReg16(InstancePtr->Config.BaseAddress, + XSDPS_HOST_CTRL2_OFFSET); + if ((CtrlReg & XSDPS_HC2_1V8_EN_MASK) == 0U) { + Status = XST_FAILURE; + goto RETURN_PATH; + } + + /* Wait for internal clock to stabilize */ + ClockReg = XSdPs_ReadReg16(InstancePtr->Config.BaseAddress, + XSDPS_CLK_CTRL_OFFSET); + XSdPs_WriteReg16(InstancePtr->Config.BaseAddress, + XSDPS_CLK_CTRL_OFFSET, + ClockReg | XSDPS_CC_INT_CLK_EN_MASK); + ClockReg = XSdPs_ReadReg16(InstancePtr->Config.BaseAddress, + XSDPS_CLK_CTRL_OFFSET); + while((ClockReg & XSDPS_CC_INT_CLK_STABLE_MASK) == 0U) { + ClockReg = XSdPs_ReadReg16(InstancePtr->Config.BaseAddress, + XSDPS_CLK_CTRL_OFFSET); + } + + /* Enable SD clock */ + ClockReg = XSdPs_ReadReg16(InstancePtr->Config.BaseAddress, + XSDPS_CLK_CTRL_OFFSET); + XSdPs_WriteReg16(InstancePtr->Config.BaseAddress, + XSDPS_CLK_CTRL_OFFSET, + ClockReg | XSDPS_CC_SD_CLK_EN_MASK); + + /* Wait for 1mSec */ + (void)usleep(1000U); + + InstancePtr->Switch1v8 = 1U; + } + #if defined (ARMR5) || defined (__aarch64__) || defined (ARMA53_32) if (InstancePtr->Switch1v8 != 0U) { @@ -895,7 +981,6 @@ RETURN_PATH: return Status; } -#ifndef UHS_BROKEN /*****************************************************************************/ /** * @@ -986,7 +1071,6 @@ static s32 XSdPs_Switch_Voltage(XSdPs *InstancePtr) RETURN_PATH: return Status; } -#endif /*****************************************************************************/ /** @@ -1066,8 +1150,8 @@ s32 XSdPs_CmdTransfer(XSdPs *InstancePtr, u32 Cmd, u32 Arg, u32 BlkCnt) } } - XSdPs_WriteReg16(InstancePtr->Config.BaseAddress, XSDPS_CMD_OFFSET, - (u16)CommandReg); + XSdPs_WriteReg(InstancePtr->Config.BaseAddress, XSDPS_XFER_MODE_OFFSET, + (CommandReg << 16) | TransferMode); /* Polling for response for now */ do { @@ -1187,6 +1271,7 @@ u32 XSdPs_FrameCmd(XSdPs *InstancePtr, u32 Cmd) case CMD24: case CMD25: RetVal |= RESP_R1 | (u32)XSDPS_DAT_PRESENT_SEL_MASK; + break; case ACMD41: RetVal |= RESP_R3; break; @@ -1258,20 +1343,32 @@ s32 XSdPs_ReadPolled(XSdPs *InstancePtr, u32 Arg, u32 BlkCnt, u8 *Buff) } XSdPs_SetupADMA2DescTbl(InstancePtr, BlkCnt, Buff); + if (InstancePtr->Config.IsCacheCoherent == 0) { + Xil_DCacheInvalidateRange((INTPTR)Buff, + BlkCnt * XSDPS_BLK_SIZE_512_MASK); + } - XSdPs_WriteReg16(InstancePtr->Config.BaseAddress, - XSDPS_XFER_MODE_OFFSET, - XSDPS_TM_AUTO_CMD12_EN_MASK | - XSDPS_TM_BLK_CNT_EN_MASK | XSDPS_TM_DAT_DIR_SEL_MASK | - XSDPS_TM_DMA_EN_MASK | XSDPS_TM_MUL_SIN_BLK_SEL_MASK); + if (BlkCnt == 1U) { + TransferMode = XSDPS_TM_BLK_CNT_EN_MASK | + XSDPS_TM_DAT_DIR_SEL_MASK | XSDPS_TM_DMA_EN_MASK; - Xil_DCacheInvalidateRange((INTPTR)Buff, BlkCnt * XSDPS_BLK_SIZE_512_MASK); + /* Send single block read command */ + Status = XSdPs_CmdTransfer(InstancePtr, CMD17, Arg, BlkCnt); + if (Status != XST_SUCCESS) { + Status = XST_FAILURE; + goto RETURN_PATH; + } + } else { + TransferMode = XSDPS_TM_AUTO_CMD12_EN_MASK | + XSDPS_TM_BLK_CNT_EN_MASK | XSDPS_TM_DAT_DIR_SEL_MASK | + XSDPS_TM_DMA_EN_MASK | XSDPS_TM_MUL_SIN_BLK_SEL_MASK; - /* Send block read command */ - Status = XSdPs_CmdTransfer(InstancePtr, CMD18, Arg, BlkCnt); - if (Status != XST_SUCCESS) { - Status = XST_FAILURE; - goto RETURN_PATH; + /* Send multiple blocks read command */ + Status = XSdPs_CmdTransfer(InstancePtr, CMD18, Arg, BlkCnt); + if (Status != XST_SUCCESS) { + Status = XST_FAILURE; + goto RETURN_PATH; + } } /* Check for transfer complete */ @@ -1349,19 +1446,31 @@ s32 XSdPs_WritePolled(XSdPs *InstancePtr, u32 Arg, u32 BlkCnt, const u8 *Buff) } XSdPs_SetupADMA2DescTbl(InstancePtr, BlkCnt, Buff); - Xil_DCacheFlushRange((INTPTR)Buff, BlkCnt * XSDPS_BLK_SIZE_512_MASK); + if (InstancePtr->Config.IsCacheCoherent == 0) { + Xil_DCacheFlushRange((INTPTR)Buff, + BlkCnt * XSDPS_BLK_SIZE_512_MASK); + } - XSdPs_WriteReg16(InstancePtr->Config.BaseAddress, - XSDPS_XFER_MODE_OFFSET, - XSDPS_TM_AUTO_CMD12_EN_MASK | + if (BlkCnt == 1U) { + TransferMode = XSDPS_TM_BLK_CNT_EN_MASK | XSDPS_TM_DMA_EN_MASK; + + /* Send single block write command */ + Status = XSdPs_CmdTransfer(InstancePtr, CMD24, Arg, BlkCnt); + if (Status != XST_SUCCESS) { + Status = XST_FAILURE; + goto RETURN_PATH; + } + } else { + TransferMode = XSDPS_TM_AUTO_CMD12_EN_MASK | XSDPS_TM_BLK_CNT_EN_MASK | - XSDPS_TM_MUL_SIN_BLK_SEL_MASK | XSDPS_TM_DMA_EN_MASK); + XSDPS_TM_MUL_SIN_BLK_SEL_MASK | XSDPS_TM_DMA_EN_MASK; - /* Send block write command */ - Status = XSdPs_CmdTransfer(InstancePtr, CMD25, Arg, BlkCnt); - if (Status != XST_SUCCESS) { - Status = XST_FAILURE; - goto RETURN_PATH; + /* Send multiple blocks write command */ + Status = XSdPs_CmdTransfer(InstancePtr, CMD25, Arg, BlkCnt); + if (Status != XST_SUCCESS) { + Status = XST_FAILURE; + goto RETURN_PATH; + } } /* @@ -1463,8 +1572,13 @@ void XSdPs_SetupADMA2DescTbl(XSdPs *InstancePtr, u32 BlkCnt, const u8 *Buff) } for (DescNum = 0U; DescNum < (TotalDescLines-1); DescNum++) { +#ifdef __aarch64__ + InstancePtr->Adma2_DescrTbl[DescNum].Address = + (u64)((UINTPTR)Buff + (DescNum*XSDPS_DESC_MAX_LENGTH)); +#else InstancePtr->Adma2_DescrTbl[DescNum].Address = (u32)((UINTPTR)Buff + (DescNum*XSDPS_DESC_MAX_LENGTH)); +#endif InstancePtr->Adma2_DescrTbl[DescNum].Attribute = XSDPS_DESC_TRAN | XSDPS_DESC_VALID; /* This will write '0' to length field which indicates 65536 */ @@ -1472,8 +1586,13 @@ void XSdPs_SetupADMA2DescTbl(XSdPs *InstancePtr, u32 BlkCnt, const u8 *Buff) (u16)XSDPS_DESC_MAX_LENGTH; } +#ifdef __aarch64__ + InstancePtr->Adma2_DescrTbl[TotalDescLines-1].Address = + (u64)((UINTPTR)Buff + (DescNum*XSDPS_DESC_MAX_LENGTH)); +#else InstancePtr->Adma2_DescrTbl[TotalDescLines-1].Address = (u32)((UINTPTR)Buff + (DescNum*XSDPS_DESC_MAX_LENGTH)); +#endif InstancePtr->Adma2_DescrTbl[TotalDescLines-1].Attribute = XSDPS_DESC_TRAN | XSDPS_DESC_END | XSDPS_DESC_VALID; @@ -1481,13 +1600,18 @@ void XSdPs_SetupADMA2DescTbl(XSdPs *InstancePtr, u32 BlkCnt, const u8 *Buff) InstancePtr->Adma2_DescrTbl[TotalDescLines-1].Length = (u16)((BlkCnt*BlkSize) - (DescNum*XSDPS_DESC_MAX_LENGTH)); +#ifdef __aarch64__ + XSdPs_WriteReg(InstancePtr->Config.BaseAddress, XSDPS_ADMA_SAR_EXT_OFFSET, + (u32)(((u64)&(InstancePtr->Adma2_DescrTbl[0]))>>32)); +#endif XSdPs_WriteReg(InstancePtr->Config.BaseAddress, XSDPS_ADMA_SAR_OFFSET, (u32)(UINTPTR)&(InstancePtr->Adma2_DescrTbl[0])); - Xil_DCacheFlushRange((INTPTR)&(InstancePtr->Adma2_DescrTbl[0]), + if (InstancePtr->Config.IsCacheCoherent == 0) { + Xil_DCacheFlushRange((INTPTR)&(InstancePtr->Adma2_DescrTbl[0]), sizeof(XSdPs_Adma2Descriptor) * 32U); - + } } /*****************************************************************************/ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xsdps.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5/src/xsdps.h similarity index 94% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xsdps.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5/src/xsdps.h index 9e475207d..b8d979d1d 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xsdps.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5/src/xsdps.h @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2013 - 2016 Xilinx, Inc. All rights reserved. +* Copyright (C) 2013 - 2018 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -33,7 +33,7 @@ /** * * @file xsdps.h -* @addtogroup sdps_v2_5 +* @addtogroup sdps_v3_5 * @{ * @details * @@ -144,6 +144,11 @@ * sk 02/01/17 Consider bus width parameter from design for switching * vns 02/09/17 Added ARMA53_32 support for ZynqMP CR#968397 * sk 03/20/17 Add support for EL1 non-secure mode. +* 3.3 mn 05/17/17 Add support for 64bit DMA addressing +* mn 08/07/17 Modify driver to support 64-bit DMA in arm64 only +* mn 08/17/17 Enabled CCI support for A53 by adding cache coherency +* information. +* mn 09/06/17 Resolved compilation errors with IAR toolchain * * </pre> * @@ -161,6 +166,7 @@ extern "C" { #include "xil_cache.h" #include "xstatus.h" #include "xsdps_hw.h" +#include "xplatform_info.h" #include <string.h> /************************** Constant Definitions *****************************/ @@ -184,14 +190,25 @@ typedef struct { u32 BusWidth; /**< Bus Width */ u32 BankNumber; /**< MIO Bank selection for SD */ u32 HasEMIO; /**< If SD is connected to EMIO */ + u8 IsCacheCoherent; /**< If SD is Cache Coherent or not */ } XSdPs_Config; /* ADMA2 descriptor table */ typedef struct { u16 Attribute; /**< Attributes of descriptor */ u16 Length; /**< Length of current dma transfer */ +#ifdef __aarch64__ + u64 Address; /**< Address of current dma transfer */ +#else u32 Address; /**< Address of current dma transfer */ +#endif +#ifdef __ICCARM__ +#pragma data_alignment = 32 } XSdPs_Adma2Descriptor; +#pragma data_alignment = 4 +#else +} __attribute__((__packed__))XSdPs_Adma2Descriptor; +#endif /** * The XSdPs driver instance data. The user is required to allocate a diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2/src/xsdps_g.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5/src/xsdps_g.c similarity index 94% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2/src/xsdps_g.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5/src/xsdps_g.c index b8eca64ba..4fcd04067 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2/src/xsdps_g.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5/src/xsdps_g.c @@ -5,7 +5,7 @@ * Version: * DO NOT EDIT. * -* Copyright (C) 2010-2017 Xilinx, Inc. All Rights Reserved.* +* Copyright (C) 2010-2018 Xilinx, Inc. All Rights Reserved.* *Permission is hereby granted, free of charge, to any person obtaining a copy *of this software and associated documentation files (the Software), to deal *in the Software without restriction, including without limitation the rights @@ -54,7 +54,8 @@ XSdPs_Config XSdPs_ConfigTable[XPAR_XSDPS_NUM_INSTANCES] = XPAR_PS7_SD_0_HAS_WP, XPAR_PS7_SD_0_BUS_WIDTH, XPAR_PS7_SD_0_MIO_BANK, - XPAR_PS7_SD_0_HAS_EMIO + XPAR_PS7_SD_0_HAS_EMIO, + XPAR_PS7_SD_0_IS_CACHE_COHERENT } }; diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xsdps_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5/src/xsdps_hw.h similarity index 96% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xsdps_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5/src/xsdps_hw.h index 6bb6c2a61..c63d8f62a 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xsdps_hw.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5/src/xsdps_hw.h @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2013 - 2016 Xilinx, Inc. All rights reserved. +* Copyright (C) 2013 - 2018 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -33,7 +33,7 @@ /** * * @file xsdps_hw.h -* @addtogroup sdps_v2_5 +* @addtogroup sdps_v3_5 * @{ * * This header file contains the identifiers and basic HW access driver @@ -57,6 +57,10 @@ * operating modes. * 3.1 sk 11/07/16 Enable Rst_n bit in ext_csd reg if not enabled. * 3.2 sk 03/20/17 Add support for EL1 non-secure mode. +* 3.3 mn 08/22/17 Updated for Word Access System support +* mn 09/06/17 Added support for ARMCC toolchain +* 3.4 mn 01/22/18 Separated out SDR104 and HS200 clock defines +* * </pre> * ******************************************************************************/ @@ -995,6 +999,13 @@ extern "C" { #define XSDPS_SD_SDR50_MAX_CLK 100000000U #define XSDPS_SD_DDR50_MAX_CLK 50000000U #define XSDPS_SD_SDR104_MAX_CLK 208000000U +/* + * XSDPS_SD_INPUT_MAX_CLK is set to 175000000 in order to keep it smaller + * than the clock value coming from the core. This value is kept to safely + * switch to SDR104 mode if the SD card supports it. + */ +#define XSDPS_SD_INPUT_MAX_CLK 175000000U + #define XSDPS_MMC_HS200_MAX_CLK 200000000U #define XSDPS_MMC_HSD_MAX_CLK 52000000U #define XSDPS_MMC_DDR_MAX_CLK 52000000U @@ -1163,8 +1174,18 @@ extern "C" { * u16 XSdPs_ReadReg(u32 BaseAddress. int RegOffset) * ******************************************************************************/ -#define XSdPs_ReadReg16(BaseAddress, RegOffset) \ - XSdPs_In16((BaseAddress) + (RegOffset)) +static INLINE u16 XSdPs_ReadReg16(u32 BaseAddress, u8 RegOffset) +{ +#if defined (__MICROBLAZE__) + u32 Reg; + BaseAddress += RegOffset & 0xFC; + Reg = XSdPs_In32(BaseAddress); + Reg >>= ((RegOffset & 0x3)*8); + return (u16)Reg; +#else + return XSdPs_In16((BaseAddress) + (RegOffset)); +#endif +} /***************************************************************************/ /** @@ -1182,8 +1203,20 @@ extern "C" { * u16 RegisterValue) * ******************************************************************************/ -#define XSdPs_WriteReg16(BaseAddress, RegOffset, RegisterValue) \ - XSdPs_Out16((BaseAddress) + (RegOffset), (RegisterValue)) + +static INLINE void XSdPs_WriteReg16(u32 BaseAddress, u8 RegOffset, u16 RegisterValue) +{ +#if defined (__MICROBLAZE__) + u32 Reg; + BaseAddress += RegOffset & 0xFC; + Reg = XSdPs_In32(BaseAddress); + Reg &= ~(0xFFFF<<((RegOffset & 0x3)*8)); + Reg |= RegisterValue <<((RegOffset & 0x3)*8); + XSdPs_Out32(BaseAddress, Reg); +#else + XSdPs_Out16((BaseAddress) + (RegOffset), (RegisterValue)); +#endif +} /****************************************************************************/ /** @@ -1199,9 +1232,18 @@ extern "C" { * u8 XSdPs_ReadReg(u32 BaseAddress. int RegOffset) * ******************************************************************************/ -#define XSdPs_ReadReg8(BaseAddress, RegOffset) \ - XSdPs_In8((BaseAddress) + (RegOffset)) - +static INLINE u8 XSdPs_ReadReg8(u32 BaseAddress, u8 RegOffset) +{ +#if defined (__MICROBLAZE__) + u32 Reg; + BaseAddress += RegOffset & 0xFC; + Reg = XSdPs_In32(BaseAddress); + Reg >>= ((RegOffset & 0x3)*8); + return (u8)Reg; +#else + return XSdPs_In8((BaseAddress) + (RegOffset)); +#endif +} /***************************************************************************/ /** * Write to a register. @@ -1218,9 +1260,19 @@ extern "C" { * u8 RegisterValue) * ******************************************************************************/ -#define XSdPs_WriteReg8(BaseAddress, RegOffset, RegisterValue) \ - XSdPs_Out8((BaseAddress) + (RegOffset), (RegisterValue)) - +static INLINE void XSdPs_WriteReg8(u32 BaseAddress, u8 RegOffset, u8 RegisterValue) +{ +#if defined (__MICROBLAZE__) + u32 Reg; + BaseAddress += RegOffset & 0xFC; + Reg = XSdPs_In32(BaseAddress); + Reg &= ~(0xFF<<((RegOffset & 0x3)*8)); + Reg |= RegisterValue <<((RegOffset & 0x3)*8); + XSdPs_Out32(BaseAddress, Reg); +#else + XSdPs_Out8((BaseAddress) + (RegOffset), (RegisterValue)); +#endif +} /***************************************************************************/ /** * Macro to get present status register diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2/src/xsdps_options.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5/src/xsdps_options.c similarity index 94% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2/src/xsdps_options.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5/src/xsdps_options.c index 6743f1b34..4894754ad 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2/src/xsdps_options.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5/src/xsdps_options.c @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2013 - 2016 Xilinx, Inc. All rights reserved. +* Copyright (C) 2013 - 2018 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -33,7 +33,7 @@ /** * * @file xsdps_options.c -* @addtogroup sdps_v2_5 +* @addtogroup sdps_v3_5 * @{ * * Contains API's for changing the various options in host and card. @@ -68,6 +68,13 @@ * vns 02/09/17 Added ARMA53_32 support for ZynqMP CR#968397 * vns 03/13/17 Fixed MISRAC mandatory violation * sk 03/20/17 Add support for EL1 non-secure mode. +* 3.3 mn 07/25/17 Removed SD0_OTAPDLYENA and SD1_OTAPDLYENA bits +* mn 08/07/17 Properly set OTAPDLY value by clearing previous bit +* settings +* mn 08/17/17 Added CCI support for A53 and disabled data cache +* operations when it is enabled. +* mn 08/22/17 Updated for Word Access System support +* 3.4 mn 01/22/18 Separated out SDR104 and HS200 clock defines * * </pre> * @@ -100,6 +107,7 @@ void XSdPs_SetTapDelay(XSdPs *InstancePtr); static void XSdPs_DllReset(XSdPs *InstancePtr); #endif +extern u16 TransferMode; /*****************************************************************************/ /** * Update Block size for read/write operations. @@ -199,11 +207,11 @@ s32 XSdPs_Get_BusWidth(XSdPs *InstancePtr, u8 *SCR) XSdPs_SetupADMA2DescTbl(InstancePtr, BlkCnt, SCR); - XSdPs_WriteReg16(InstancePtr->Config.BaseAddress, - XSDPS_XFER_MODE_OFFSET, - XSDPS_TM_DAT_DIR_SEL_MASK | XSDPS_TM_DMA_EN_MASK); + TransferMode = XSDPS_TM_DAT_DIR_SEL_MASK | XSDPS_TM_DMA_EN_MASK; - Xil_DCacheInvalidateRange((INTPTR)SCR, 8); + if (InstancePtr->Config.IsCacheCoherent == 0) { + Xil_DCacheInvalidateRange((INTPTR)SCR, 8); + } Status = XSdPs_CmdTransfer(InstancePtr, ACMD51, 0U, BlkCnt); if (Status != XST_SUCCESS) { @@ -419,13 +427,13 @@ s32 XSdPs_Get_BusSpeed(XSdPs *InstancePtr, u8 *ReadBuff) XSdPs_SetupADMA2DescTbl(InstancePtr, BlkCnt, ReadBuff); - XSdPs_WriteReg16(InstancePtr->Config.BaseAddress, - XSDPS_XFER_MODE_OFFSET, - XSDPS_TM_DAT_DIR_SEL_MASK | XSDPS_TM_DMA_EN_MASK); + TransferMode = XSDPS_TM_DAT_DIR_SEL_MASK | XSDPS_TM_DMA_EN_MASK; Arg = XSDPS_SWITCH_CMD_HS_GET; - Xil_DCacheInvalidateRange((INTPTR)ReadBuff, 64); + if (InstancePtr->Config.IsCacheCoherent == 0) { + Xil_DCacheInvalidateRange((INTPTR)ReadBuff, 64); + } Status = XSdPs_CmdTransfer(InstancePtr, CMD6, Arg, 1U); if (Status != XST_SUCCESS) { @@ -501,11 +509,11 @@ s32 XSdPs_Change_BusSpeed(XSdPs *InstancePtr) XSdPs_SetupADMA2DescTbl(InstancePtr, BlkCnt, ReadBuff); - Xil_DCacheFlushRange((INTPTR)ReadBuff, 64); + if (InstancePtr->Config.IsCacheCoherent == 0) { + Xil_DCacheFlushRange((INTPTR)ReadBuff, 64); + } - XSdPs_WriteReg16(InstancePtr->Config.BaseAddress, - XSDPS_XFER_MODE_OFFSET, - XSDPS_TM_DAT_DIR_SEL_MASK | XSDPS_TM_DMA_EN_MASK); + TransferMode = XSDPS_TM_DAT_DIR_SEL_MASK | XSDPS_TM_DMA_EN_MASK; Arg = XSDPS_SWITCH_CMD_HS_SET; @@ -864,12 +872,11 @@ s32 XSdPs_Get_Mmc_ExtCsd(XSdPs *InstancePtr, u8 *ReadBuff) XSdPs_SetupADMA2DescTbl(InstancePtr, BlkCnt, ReadBuff); - Xil_DCacheInvalidateRange((INTPTR)ReadBuff, 512U); - - XSdPs_WriteReg16(InstancePtr->Config.BaseAddress, - XSDPS_XFER_MODE_OFFSET, - XSDPS_TM_DAT_DIR_SEL_MASK | XSDPS_TM_DMA_EN_MASK); + if (InstancePtr->Config.IsCacheCoherent == 0) { + Xil_DCacheInvalidateRange((INTPTR)ReadBuff, 512U); + } + TransferMode = XSDPS_TM_DAT_DIR_SEL_MASK | XSDPS_TM_DMA_EN_MASK; /* Send SEND_EXT_CSD command */ Status = XSdPs_CmdTransfer(InstancePtr, CMD8, Arg, 1U); @@ -991,7 +998,7 @@ void XSdPs_Identify_UhsMode(XSdPs *InstancePtr, u8 *ReadBuff) Xil_AssertVoid(InstancePtr != NULL); if (((ReadBuff[13] & UHS_SDR104_SUPPORT) != 0U) && - (InstancePtr->Config.InputClockHz >= XSDPS_MMC_HS200_MAX_CLK)) { + (InstancePtr->Config.InputClockHz >= XSDPS_SD_INPUT_MAX_CLK)) { InstancePtr->Mode = XSDPS_UHS_SPEED_MODE_SDR104; InstancePtr->Config_TapDelay = XSdPs_sdr104_hs200_tapdelay; } @@ -1054,10 +1061,11 @@ s32 XSdPs_Uhs_ModeInit(XSdPs *InstancePtr, u8 Mode) XSdPs_SetupADMA2DescTbl(InstancePtr, BlkCnt, ReadBuff); - Xil_DCacheFlushRange((INTPTR)ReadBuff, 64); + if (InstancePtr->Config.IsCacheCoherent == 0) { + Xil_DCacheFlushRange((INTPTR)ReadBuff, 64); + } - XSdPs_WriteReg16(InstancePtr->Config.BaseAddress, XSDPS_XFER_MODE_OFFSET, - XSDPS_TM_DAT_DIR_SEL_MASK | XSDPS_TM_DMA_EN_MASK); + TransferMode = XSDPS_TM_DAT_DIR_SEL_MASK | XSDPS_TM_DMA_EN_MASK; switch (Mode) { case 0U: @@ -1166,8 +1174,7 @@ static s32 XSdPs_Execute_Tuning(XSdPs *InstancePtr) XSdPs_WriteReg16(InstancePtr->Config.BaseAddress, XSDPS_BLK_SIZE_OFFSET, BlkSize); - XSdPs_WriteReg16(InstancePtr->Config.BaseAddress, XSDPS_XFER_MODE_OFFSET, - XSDPS_TM_DAT_DIR_SEL_MASK); + TransferMode = XSDPS_TM_DAT_DIR_SEL_MASK; CtrlReg = XSdPs_ReadReg16(InstancePtr->Config.BaseAddress, XSDPS_HOST_CTRL2_OFFSET); @@ -1256,9 +1263,6 @@ void XSdPs_sdr104_hs200_tapdelay(u32 Bank, u32 DeviceId, u32 CardType) if (DeviceId == 0U) { #if EL1_NONSECURE && defined (__aarch64__) (void)TapDelay; - Xil_Smc(MMIO_WRITE_SMC_FID, (u64)(XPS_SYS_CTRL_BASEADDR + SD_OTAPDLY) | - ((u64)SD0_OTAPDLYENA << 32), (u64)SD0_OTAPDLYENA, - 0, 0, 0, 0, 0); if (Bank == 2) Xil_Smc(MMIO_WRITE_SMC_FID, (u64)(XPS_SYS_CTRL_BASEADDR + SD_OTAPDLY) | ((u64)SD0_OTAPDLY_SEL_MASK << 32), @@ -1270,8 +1274,7 @@ void XSdPs_sdr104_hs200_tapdelay(u32 Bank, u32 DeviceId, u32 CardType) #else /* Program the OTAPDLY */ TapDelay = XSdPs_ReadReg(XPS_SYS_CTRL_BASEADDR, SD_OTAPDLY); - TapDelay |= SD0_OTAPDLYENA; - XSdPs_WriteReg(XPS_SYS_CTRL_BASEADDR, SD_OTAPDLY, TapDelay); + TapDelay &= ~SD0_OTAPDLY_SEL_MASK; if (Bank == 2) TapDelay |= SD0_OTAPDLYSEL_HS200_B2; else @@ -1283,9 +1286,6 @@ void XSdPs_sdr104_hs200_tapdelay(u32 Bank, u32 DeviceId, u32 CardType) (void) DeviceId; #if EL1_NONSECURE && defined (__aarch64__) (void)TapDelay; - Xil_Smc(MMIO_WRITE_SMC_FID, (u64)(XPS_SYS_CTRL_BASEADDR + SD_OTAPDLY) | - ((u64)SD1_OTAPDLYENA << 32), (u64)SD1_OTAPDLYENA, - 0, 0, 0, 0, 0); if (Bank == 2) Xil_Smc(MMIO_WRITE_SMC_FID, (u64)(XPS_SYS_CTRL_BASEADDR + SD_OTAPDLY) | ((u64)SD1_OTAPDLY_SEL_MASK << 32), @@ -1296,8 +1296,7 @@ void XSdPs_sdr104_hs200_tapdelay(u32 Bank, u32 DeviceId, u32 CardType) (u64)SD1_OTAPDLYSEL_HS200_B0, 0, 0, 0, 0, 0); #else TapDelay = XSdPs_ReadReg(XPS_SYS_CTRL_BASEADDR, SD_OTAPDLY); - TapDelay |= SD1_OTAPDLYENA; - XSdPs_WriteReg(XPS_SYS_CTRL_BASEADDR, SD_OTAPDLY, TapDelay); + TapDelay &= ~SD1_OTAPDLY_SEL_MASK; if (Bank == 2) TapDelay |= SD1_OTAPDLYSEL_HS200_B2; else @@ -1332,17 +1331,13 @@ void XSdPs_sdr50_tapdelay(u32 Bank, u32 DeviceId, u32 CardType) if (DeviceId == 0U) { #if EL1_NONSECURE && defined (__aarch64__) (void)TapDelay; - Xil_Smc(MMIO_WRITE_SMC_FID, (u64)(XPS_SYS_CTRL_BASEADDR + SD_OTAPDLY) | - ((u64)SD0_OTAPDLYENA << 32), (u64)SD0_OTAPDLYENA, - 0, 0, 0, 0, 0); Xil_Smc(MMIO_WRITE_SMC_FID, (u64)(XPS_SYS_CTRL_BASEADDR + SD_OTAPDLY) | ((u64)SD0_OTAPDLY_SEL_MASK << 32), (u64)SD0_OTAPDLYSEL_SD50, 0, 0, 0, 0, 0); #else /* Program the OTAPDLY */ TapDelay = XSdPs_ReadReg(XPS_SYS_CTRL_BASEADDR, SD_OTAPDLY); - TapDelay |= SD0_OTAPDLYENA; - XSdPs_WriteReg(XPS_SYS_CTRL_BASEADDR, SD_OTAPDLY, TapDelay); + TapDelay &= ~SD0_OTAPDLY_SEL_MASK; TapDelay |= SD0_OTAPDLYSEL_SD50; XSdPs_WriteReg(XPS_SYS_CTRL_BASEADDR, SD_OTAPDLY, TapDelay); #endif @@ -1351,16 +1346,12 @@ void XSdPs_sdr50_tapdelay(u32 Bank, u32 DeviceId, u32 CardType) (void) DeviceId; #if EL1_NONSECURE && defined (__aarch64__) (void)TapDelay; - Xil_Smc(MMIO_WRITE_SMC_FID, (u64)(XPS_SYS_CTRL_BASEADDR + SD_OTAPDLY) | - ((u64)SD1_OTAPDLYENA << 32), (u64)SD1_OTAPDLYENA, - 0, 0, 0, 0, 0); Xil_Smc(MMIO_WRITE_SMC_FID, (u64)(XPS_SYS_CTRL_BASEADDR + SD_OTAPDLY) | ((u64)SD1_OTAPDLY_SEL_MASK << 32), (u64)SD1_OTAPDLYSEL_SD50, 0, 0, 0, 0, 0); #else TapDelay = XSdPs_ReadReg(XPS_SYS_CTRL_BASEADDR, SD_OTAPDLY); - TapDelay |= SD1_OTAPDLYENA; - XSdPs_WriteReg(XPS_SYS_CTRL_BASEADDR, SD_OTAPDLY, TapDelay); + TapDelay &= ~SD1_OTAPDLY_SEL_MASK; TapDelay |= SD1_OTAPDLYSEL_SD50; XSdPs_WriteReg(XPS_SYS_CTRL_BASEADDR, SD_OTAPDLY, TapDelay); #endif @@ -1407,9 +1398,6 @@ void XSdPs_ddr50_tapdelay(u32 Bank, u32 DeviceId, u32 CardType) (u64)SD0_ITAPDLYSEL_EMMC_DDR50, 0, 0, 0, 0, 0); Xil_Smc(MMIO_WRITE_SMC_FID, (u64)(XPS_SYS_CTRL_BASEADDR + SD_ITAPDLY) | ((u64)SD0_ITAPCHGWIN << 32), (u64)0x0, 0, 0, 0, 0, 0); - Xil_Smc(MMIO_WRITE_SMC_FID, (u64)(XPS_SYS_CTRL_BASEADDR + SD_OTAPDLY) | - ((u64)SD0_OTAPDLYENA << 32), (u64)SD0_OTAPDLYENA, - 0, 0, 0, 0, 0); if (CardType == XSDPS_CARD_SD) Xil_Smc(MMIO_WRITE_SMC_FID, (u64)(XPS_SYS_CTRL_BASEADDR + SD_OTAPDLY) | ((u64)SD0_OTAPDLY_SEL_MASK << 32), @@ -1434,8 +1422,7 @@ void XSdPs_ddr50_tapdelay(u32 Bank, u32 DeviceId, u32 CardType) XSdPs_WriteReg(XPS_SYS_CTRL_BASEADDR, SD_ITAPDLY, TapDelay); /* Program the OTAPDLY */ TapDelay = XSdPs_ReadReg(XPS_SYS_CTRL_BASEADDR, SD_OTAPDLY); - TapDelay |= SD0_OTAPDLYENA; - XSdPs_WriteReg(XPS_SYS_CTRL_BASEADDR, SD_OTAPDLY, TapDelay); + TapDelay &= ~SD0_OTAPDLY_SEL_MASK; if (CardType == XSDPS_CARD_SD) TapDelay |= SD0_OTAPDLYSEL_SD_DDR50; else @@ -1464,9 +1451,6 @@ void XSdPs_ddr50_tapdelay(u32 Bank, u32 DeviceId, u32 CardType) Xil_Smc(MMIO_WRITE_SMC_FID, (u64)(XPS_SYS_CTRL_BASEADDR + SD_ITAPDLY) | ((u64)SD1_ITAPCHGWIN << 32), (u64)0x0, 0, 0, 0, 0, 0); - Xil_Smc(MMIO_WRITE_SMC_FID, (u64)(XPS_SYS_CTRL_BASEADDR + - SD_OTAPDLY) | ((u64)SD1_OTAPDLYENA << 32), (u64)SD1_OTAPDLYENA, - 0, 0, 0, 0, 0); if (CardType == XSDPS_CARD_SD) Xil_Smc(MMIO_WRITE_SMC_FID,(u64)(XPS_SYS_CTRL_BASEADDR + SD_OTAPDLY) | ((u64)SD1_OTAPDLY_SEL_MASK << 32), @@ -1491,8 +1475,7 @@ void XSdPs_ddr50_tapdelay(u32 Bank, u32 DeviceId, u32 CardType) XSdPs_WriteReg(XPS_SYS_CTRL_BASEADDR, SD_ITAPDLY, TapDelay); /* Program the OTAPDLY */ TapDelay = XSdPs_ReadReg(XPS_SYS_CTRL_BASEADDR, SD_OTAPDLY); - TapDelay |= SD1_OTAPDLYENA; - XSdPs_WriteReg(XPS_SYS_CTRL_BASEADDR, SD_OTAPDLY, TapDelay); + TapDelay &= ~SD1_OTAPDLY_SEL_MASK; if (CardType == XSDPS_CARD_SD) TapDelay |= SD1_OTAPDLYSEL_SD_DDR50; else @@ -1537,9 +1520,6 @@ void XSdPs_hsd_sdr25_tapdelay(u32 Bank, u32 DeviceId, u32 CardType) 0, 0, 0, 0, 0); Xil_Smc(MMIO_WRITE_SMC_FID, (u64)(XPS_SYS_CTRL_BASEADDR + SD_ITAPDLY) | ((u64)SD0_ITAPCHGWIN << 32), (u64)0x0, 0, 0, 0, 0, 0); - Xil_Smc(MMIO_WRITE_SMC_FID, (u64)(XPS_SYS_CTRL_BASEADDR + SD_OTAPDLY) | - ((u64)SD0_OTAPDLYENA << 32), (u64)SD0_OTAPDLYENA, - 0, 0, 0, 0, 0); if (CardType == XSDPS_CARD_SD) Xil_Smc(MMIO_WRITE_SMC_FID, (u64)(XPS_SYS_CTRL_BASEADDR + SD_OTAPDLY) | ((u64)SD0_OTAPDLY_SEL_MASK << 32), @@ -1561,8 +1541,7 @@ void XSdPs_hsd_sdr25_tapdelay(u32 Bank, u32 DeviceId, u32 CardType) XSdPs_WriteReg(XPS_SYS_CTRL_BASEADDR, SD_ITAPDLY, TapDelay); /* Program the OTAPDLY */ TapDelay = XSdPs_ReadReg(XPS_SYS_CTRL_BASEADDR, SD_OTAPDLY); - TapDelay |= SD0_OTAPDLYENA; - XSdPs_WriteReg(XPS_SYS_CTRL_BASEADDR, SD_OTAPDLY, TapDelay); + TapDelay &= ~SD0_OTAPDLY_SEL_MASK; if (CardType == XSDPS_CARD_SD) TapDelay |= SD0_OTAPDLYSEL_SD_HSD; else @@ -1585,9 +1564,6 @@ void XSdPs_hsd_sdr25_tapdelay(u32 Bank, u32 DeviceId, u32 CardType) 0, 0, 0, 0, 0); Xil_Smc(MMIO_WRITE_SMC_FID, (u64)(XPS_SYS_CTRL_BASEADDR + SD_ITAPDLY) | ((u64)SD1_ITAPCHGWIN << 32), (u64)0x0, 0, 0, 0, 0, 0); - Xil_Smc(MMIO_WRITE_SMC_FID, (u64)(XPS_SYS_CTRL_BASEADDR + SD_OTAPDLY) | - ((u64)SD1_OTAPDLYENA << 32), (u64)SD1_OTAPDLYENA, - 0, 0, 0, 0, 0); if (CardType == XSDPS_CARD_SD) Xil_Smc(MMIO_WRITE_SMC_FID, (u64)(XPS_SYS_CTRL_BASEADDR + SD_OTAPDLY) | ((u64)SD1_OTAPDLY_SEL_MASK << 32), @@ -1609,8 +1585,7 @@ void XSdPs_hsd_sdr25_tapdelay(u32 Bank, u32 DeviceId, u32 CardType) XSdPs_WriteReg(XPS_SYS_CTRL_BASEADDR, SD_ITAPDLY, TapDelay); /* Program the OTAPDLY */ TapDelay = XSdPs_ReadReg(XPS_SYS_CTRL_BASEADDR, SD_OTAPDLY); - TapDelay |= SD1_OTAPDLYENA; - XSdPs_WriteReg(XPS_SYS_CTRL_BASEADDR, SD_OTAPDLY, TapDelay); + TapDelay &= ~SD1_OTAPDLY_SEL_MASK; if (CardType == XSDPS_CARD_SD) TapDelay |= SD1_OTAPDLYSEL_SD_HSD; else diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2/src/xsdps_sinit.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5/src/xsdps_sinit.c similarity index 97% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2/src/xsdps_sinit.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5/src/xsdps_sinit.c index e0936b308..62bbfc0dd 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/sdps_v3_2/src/xsdps_sinit.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/sdps_v3_5/src/xsdps_sinit.c @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2013 - 2016 Xilinx, Inc. All rights reserved. +* Copyright (C) 2013 - 2018 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -33,7 +33,7 @@ /** * * @file xsdps_sinit.c -* @addtogroup sdps_v2_5 +* @addtogroup sdps_v3_5 * @{ * * The implementation of the XSdPs component's static initialization diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/Makefile b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/Makefile similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/Makefile rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/Makefile diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/_exit.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/_exit.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/_exit.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/_exit.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/_open.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/_open.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/_open.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/_open.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/_sbrk.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/_sbrk.c similarity index 95% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/_sbrk.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/_sbrk.c index 2a069ec06..967bdfc5b 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/_sbrk.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/_sbrk.c @@ -54,15 +54,10 @@ __attribute__((weak)) caddr_t _sbrk ( s32 incr ) } prev_heap = heap; + if (((heap + incr) <= HeapEndPtr) && (prev_heap != NULL)) { heap += incr; - - if (heap > HeapEndPtr){ - Status = (caddr_t) -1; - } - else if (prev_heap != NULL) { Status = (caddr_t) ((void *)prev_heap); - } - else { + } else { Status = (caddr_t) -1; } diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/abort.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/abort.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/abort.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/abort.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/asm_vectors.S b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/asm_vectors.S similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/asm_vectors.S rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/asm_vectors.S diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/boot.S b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/boot.S similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/boot.S rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/boot.S diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/bspconfig.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/bspconfig.h similarity index 89% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/bspconfig.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/bspconfig.h index 87363749e..b977241ce 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/bspconfig.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/bspconfig.h @@ -5,7 +5,7 @@ * Version: * DO NOT EDIT. * -* Copyright (C) 2010-2017 Xilinx, Inc. All Rights Reserved.* +* Copyright (C) 2010-2018 Xilinx, Inc. All Rights Reserved.* *Permission is hereby granted, free of charge, to any person obtaining a copy *of this software and associated documentation files (the Software), to deal *in the Software without restriction, including without limitation the rights @@ -37,4 +37,9 @@ * *******************************************************************/ +#ifndef BSPCONFIG_H /* prevent circular inclusions */ +#define BSPCONFIG_H /* by using protection macros */ + #define MICROBLAZE_PVR_NONE + +#endif /*end of __BSPCONFIG_H_*/ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/changelog.txt b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/changelog.txt similarity index 82% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/changelog.txt rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/changelog.txt index eb58ff217..0dab3e943 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/changelog.txt +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/changelog.txt @@ -457,5 +457,93 @@ * HSI command. This change fixes it. * 6.2 mus 03/22/17 Updated standalone tcl to generate xparameter XPAR_FPD_IS_CACHE_COHERENT, if * any FPD peripheral is configured to use CCI.It fixes CR#972638 + * 6.3 mus 03/20/17 Updated cortex-r5 BSP, to add hard floating point support. + * 6.3 mus 04/17/17 Updated Cortex-a53 32 bit BSP boot code to fix bug in + * the HW coherency enablement. It fixes the CR#973287 + * 6.3 mus 04/20/17 Updated Cortex-A53 64 bit BSP boot code, to remove redundant write to the + * L2CTLR_EL1 register. It fixes the CR#974698 + * 6.4 mus 06/08/17 Updated arm/common/xil_exception.c to fix warnings in C level exception handlers + * of ARM 32 bit processor's. + * 6.4 mus 06/14/17 Updated cortexa53/64bit/gcc/asm_vectors.S to fix bug in IRQInterruptHandler code + * snippet, which checks for the FPEN bit of CPACR_EL1 register. + * 6.4 ms 05/23/17 Added PSU_PMU macro in xplatform_info.c, xparameters.h to support + * XGetPSVersion_Info function for PMUFW. + * ms 06/13/17 Added PSU_PMU macro in xplatform_info.c to support XGetPlatform_Info + * function for PMUFW. + * 6.4 mus 07/05/17 Updated Xil_In32BE function in xil_io.h to fix bug.It fixes CR#979740. + * 6.4 mus 07/25/17 Updated a53 32 bit boot code and vectors to support hard floating point + * operations.Now,VFP is being enabled in FPEXC register, through boot code + * and FPU registers are being saved/restored when irq/fiq vector is invoked. + * 6.4 adk 08/01/17 Updated standalone tcl to generate xparameter XPAR_PL_IS_CACHE_COHERENT, + * if h/w design configured with HPC port. + * 6.4 mus 08/10/17 Updated a53 64 bit translation table to mark memory as a outer shareable for + * EL1 NS execution. This change has been done to support CCI enabled IP's. + * 6.4 mus 08/11/17 Updated a53 64 bit boot code to implement ARM erratum 855873.This fixes + * CR#982209. + * 6.4 asa 08/16/17 Made several changes in the R5 MPU handling logic. Added new APIs to + * make RPU MPU handling user-friendly. This also fixes the CR-981028. + * 6.4 mus 08/17/17 Updated XGet_Zynq_UltraMp_Platform_info and XGetPSVersion_Info APIs to read + * version register through SMC call, over EL1 NS mode. This change has been done to + * support these APIs over EL1 NS mode. + * 6.5 mus 10/20/17 Updated standalone.tcl to fix bug in mb_can_handle_exceptions_in_delay_slots proc, + * it fixes CR#987464. + * 6.6 mus 12/07/17 Updated cortexa9/xil_errata.h and cortexa9/xil_cache.c to remove Errata 753970. + * It fixes CR#989132. + * srm 10/18/17 Updated all the sleep routines in a9,a53,R5,microblaze. Now the sleep routines + * will use the timer specified by the user to provide delay. A9 and A53 can use + * Global timer or TTC. R5 can use TTC or the machine cycles. Microblaze can use + * machine cycles or Axi timer. Updated standalone.tcl and standalone.mld files + * to support the sleep configuration Added new API's for the Axi timer in + * microblaze and TTC in ARM. Added two new files, xil_sleeptimer.c and + * xil_sleeptimer.h in ARM for the common sleep routines and 1 new file, + * xil_sleepcommon.c in Standalone-common for sleep/usleep API's. + * 6.6 hk 12/15/17 Export platform macros to bspconfig.h based on the processor. + * 6.6 asa 1/16/18 Ensure C stack information for A9 are flushed out from L1 D cache + * or L2 cache only when the respective caches are enabled. This fixes CR-922023. + * 6.6 mus 01/19/18 Updated asm_vectors.S and boot.S in Cortexa53 64 bit BSP, to add isb + * after writing to cpacr_el1/cptr_el3 registers. It would ensure + * disabling/enabling of floating-point unit, before any subsequent + * instruction. + * 6.6 mus 01/30/18 Updated hypervisor enabled Cortexa53 64 bit BSP, to add xen PV console + * support. Now, xil_printf would use PV console instead of UART in case of + * hypervisor enabled BSP. + * 6.6 mus 02/02/18 Updated get_connected_if proc in standalone tcl to detect the HPC port + * configured with smart interconnect.It fixes CR#990318. + * 6.6 srm 02/10/18 Updated csu_wdt interrupt to the correct value. Fixes CR#992229 + * 6.6 asa 02/12/18 Fix for heap handling for ARM platforms. CR#993932. + * 6.6 mus 02/19/18 Updated standalone.tcl to fix bug in handle_profile_opbtimer proc, + * CR#995014. + * 6.6 mus 02/23/18 Presently Cortex R5 BSP boot code is disabling the debug logic in +* non-JTAG boot mode, when processor is in lockstep configuration. +* This behavior is restricting application debugging in non-JTAG boot +* mode. To get rid of this restriction, added new mld parameter +* "lockstep_mode_debug", to enable/disable debug logic from BSP +* settings. Now, debug logic can be enabled through BSP settings, +* by modifying value of parameter "lockstep_mode_debug" as "true". +* It fixes CR#993896. + * 6.6.mus 02/27/18 Updated Xil_DCacheInvalidateRange and +* Xil_ICacheInvalidateRange APIs in Cortexa53 64 bit BSP, to fix bug +* in handling upper DDR addresses.It fixes CR#995581. +* 6.6 mus 03/12/18 Updated makefile of Cortexa53 32bit BSP to add includes_ps directory +* in the list of include paths. This change allows applications/BSP +* files to include .h files in include_ps directory. +* 6.6 mus 03/16/18 By default CPUACTLR_EL1 is accessible only from EL3, it +* results into abort if accessed from EL1 non secure privilege +* level. Updated Xil_ConfigureL1Prefetch function in Cortexa53 64 bit BSP +* to avoid CPUACTLR_EL1 access from privile levels other than EL3. +* 6.6 mus 03/16/18 Updated hypervisor enabled BSP to use PV console, based on the +* XEN_USE_PV_CONSOLE flag. By deafault hypervisor enabled BSP would +* use UART console, PV console can be enabled by appending + "-DXEN_USE_PV_CONSOLE" to the BSP extra compiler flags. * +* 6.7 mus 04/27/18 Removed __ARM_NEON__ flag definition. Now, saving/restoring of of HW +* floating point register would be done through newly introduced flag +* FPU_HARD_FLOAT_ABI_ENABLED. This new flag will be configured based on +* the -mfpu-abi option in extra compiler flags.. This change has +* been done to avoid saving/restoring of HW floating point registers, +* when BSP is not compiled with HW floating point configuration. +* 6.7 asa 04/26/18 Added API Xil_GetExceptionRegisterHandler for obtaining information +* on an already registered exception vector. +* 6.7 asa 05/18/18 Fixed bugss in the API Xil_GetExceptionRegisterHandler. +* *****************************************************************************************/ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/close.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/close.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/close.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/close.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/config.make b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/config.make similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/config.make rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/config.make diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/cpu_init.S b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/cpu_init.S similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/cpu_init.S rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/cpu_init.S diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/errno.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/errno.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/errno.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/errno.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/fcntl.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/fcntl.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/fcntl.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/fcntl.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/fstat.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/fstat.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/fstat.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/fstat.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/getpid.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/getpid.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/getpid.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/getpid.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/inbyte.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/inbyte.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/inbyte.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/inbyte.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/isatty.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/isatty.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/isatty.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/isatty.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/kill.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/kill.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/kill.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/kill.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/lseek.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/lseek.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/lseek.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/lseek.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/open.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/open.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/open.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/open.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/outbyte.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/outbyte.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/outbyte.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/outbyte.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/print.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/print.c similarity index 90% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/print.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/print.c index 74d70ee4a..da7e768d0 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/print.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/print.c @@ -21,6 +21,9 @@ void print(const char8 *ptr) { +#if HYP_GUEST && EL1_NONSECURE && XEN_USE_PV_CONSOLE + XPVXenConsole_Write(ptr); +#else #ifdef STDOUT_BASEADDRESS while (*ptr != (char8)0) { outbyte (*ptr); @@ -29,4 +32,5 @@ void print(const char8 *ptr) #else (void)ptr; #endif +#endif } diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/Makefile b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/Makefile similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/Makefile rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/Makefile diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/_profile_clean.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/_profile_clean.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/_profile_clean.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/_profile_clean.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/_profile_init.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/_profile_init.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/_profile_init.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/_profile_init.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/_profile_timer_hw.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/_profile_timer_hw.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/_profile_timer_hw.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/_profile_timer_hw.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/_profile_timer_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/_profile_timer_hw.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/_profile_timer_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/_profile_timer_hw.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/dummy.S b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/dummy.S similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/dummy.S rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/dummy.S diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/mblaze_nt_types.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/mblaze_nt_types.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/mblaze_nt_types.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/mblaze_nt_types.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/profile.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/profile.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/profile.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/profile.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/profile_cg.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/profile_cg.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/profile_cg.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/profile_cg.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/profile_config.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/profile_config.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/profile_config.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/profile_config.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/profile_hist.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/profile_hist.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/profile_hist.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/profile_hist.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/profile_mcount_arm.S b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/profile_mcount_arm.S similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/profile_mcount_arm.S rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/profile_mcount_arm.S diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/profile_mcount_mb.S b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/profile_mcount_mb.S similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/profile_mcount_mb.S rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/profile_mcount_mb.S diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/profile_mcount_ppc.S b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/profile_mcount_ppc.S similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/profile/profile_mcount_ppc.S rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/profile/profile_mcount_ppc.S diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/putnum.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/putnum.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/putnum.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/putnum.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/read.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/read.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/read.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/read.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/sbrk.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/sbrk.c similarity index 94% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/sbrk.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/sbrk.c index 64d5156af..87a753d49 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/sbrk.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/sbrk.c @@ -51,12 +51,8 @@ __attribute__((weak)) char8 *sbrk (s32 nbytes) static char8 *heap_ptr = HeapBase; base = heap_ptr; - if(heap_ptr != NULL) { + if((heap_ptr != NULL) && (heap_ptr + nbytes <= (char8 *)&HeapLimit + 1)) { heap_ptr += nbytes; - } - -/* if (heap_ptr <= ((char8 *)&_heap_end + 1)) */ - if (heap_ptr <= ((char8 *)&HeapLimit + 1)) { return base; } else { errno = ENOMEM; diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/sleep.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/sleep.c similarity index 80% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/sleep.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/sleep.c index 039fa61bd..f85743b47 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/sleep.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/sleep.c @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2009 - 2016 Xilinx, Inc. All rights reserved. +* Copyright (C) 2009 - 2017 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -44,6 +44,10 @@ * 1.00a ecm/sdm 11/11/09 First release * 3.07a sgd 07/05/12 Updated sleep function to make use Global * 6.0 asa 08/15/16 Updated the sleep signature. Fix for CR#956899. +* 6.6 srm 10/18/17 Updated sleep routines to support user configurable +* implementation. Now sleep routines will use Timer +* specified by the user (i.e. Global timer/TTC timer) +* * </pre> * ******************************************************************************/ @@ -53,6 +57,10 @@ #include "xtime_l.h" #include "xparameters.h" +#if defined (SLEEP_TIMER_BASEADDR) +#include "xil_sleeptimer.h" +#endif + /*****************************************************************************/ /* * @@ -65,16 +73,20 @@ * @note None. * ****************************************************************************/ -unsigned sleep(unsigned int seconds) +unsigned sleep_A9(unsigned int seconds) { - XTime tEnd, tCur; +#if defined (SLEEP_TIMER_BASEADDR) + Xil_SleepTTCCommon(seconds, COUNTS_PER_SECOND); +#else + XTime tEnd, tCur; - XTime_GetTime(&tCur); - tEnd = tCur + (((XTime) seconds) * COUNTS_PER_SECOND); - do - { - XTime_GetTime(&tCur); - } while (tCur < tEnd); + XTime_GetTime(&tCur); + tEnd = tCur + (((XTime) seconds) * COUNTS_PER_SECOND); + do + { + XTime_GetTime(&tCur); + } while (tCur < tEnd); +#endif return 0; } diff --git a/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/sleep.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/sleep.h new file mode 100644 index 000000000..f53b2d8c8 --- /dev/null +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/sleep.h @@ -0,0 +1,119 @@ +/****************************************************************************** +* +* Copyright (C) 2014 - 2017 Xilinx, Inc. All rights reserved. +* +* Permission is hereby granted, free of charge, to any person obtaining a copy +* of this software and associated documentation files (the "Software"), to deal +* in the Software without restriction, including without limitation the rights +* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +* copies of the Software, and to permit persons to whom the Software is +* furnished to do so, subject to the following conditions: +* +* The above copyright notice and this permission notice shall be included in +* all copies or substantial portions of the Software. +* +* Use of the Software is limited solely to applications: +* (a) running on a Xilinx device, or +* (b) that interact with a Xilinx device through a bus or interconnect. +* +* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL +* XILINX BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF +* OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +* SOFTWARE. +* +* Except as contained in this notice, the name of the Xilinx shall not be used +* in advertising or otherwise to promote the sale, use or other dealings in +* this Software without prior written authorization from Xilinx. +* +******************************************************************************/ + +/*****************************************************************************/ +/** +* @file sleep.h +* +* This header file contains ARM Cortex A53,A9,R5,Microblaze specific sleep +* related APIs. +* +* <pre> +* MODIFICATION HISTORY : +* +* Ver Who Date Changes +* ----- ---- -------- ------------------------------------------------------- +* 6.6 srm 11/02/17 Added processor specific sleep rountines +* function prototypes. +* +* </pre> +* +******************************************************************************/ + +#ifndef SLEEP_H +#define SLEEP_H + +#include "xil_types.h" +#include "xil_io.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/*****************************************************************************/ +/** +* +* This macro polls an address periodically until a condition is met or till the +* timeout occurs. +* The minimum timeout for calling this macro is 100us. If the timeout is less +* than 100us, it still waits for 100us. Also the unit for the timeout is 100us. +* If the timeout is not a multiple of 100us, it waits for a timeout of +* the next usec value which is a multiple of 100us. +* +* @param IO_func - accessor function to read the register contents. +* Depends on the register width. +* @param ADDR - Address to be polled +* @param VALUE - variable to read the value +* @param COND - Condition to checked (usually involves VALUE) +* @param TIMEOUT_US - timeout in micro seconds +* +* @return 0 - when the condition is met +* -1 - when the condition is not met till the timeout period +* +* @note none +* +*****************************************************************************/ +#define Xil_poll_timeout(IO_func, ADDR, VALUE, COND, TIMEOUT_US) \ + ( { \ + u64 timeout = TIMEOUT_US/100; \ + if(TIMEOUT_US%100!=0) \ + timeout++; \ + for(;;) { \ + VALUE = IO_func(ADDR); \ + if(COND) \ + break; \ + else { \ + usleep(100); \ + timeout--; \ + if(timeout==0) \ + break; \ + } \ + } \ + (timeout>0) ? 0 : -1; \ + } ) + +void usleep(unsigned long useconds); +void sleep(unsigned int seconds); +int usleep_R5(unsigned long useconds); +unsigned sleep_R5(unsigned int seconds); +int usleep_MB(unsigned long useconds); +unsigned sleep_MB(unsigned int seconds); +int usleep_A53(unsigned long useconds); +unsigned sleep_A53(unsigned int seconds); +int usleep_A9(unsigned long useconds); +unsigned sleep_A9(unsigned int seconds); + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/smc.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/smc.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/smc.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/smc.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/translation_table.S b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/translation_table.S similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/translation_table.S rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/translation_table.S diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/unlink.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/unlink.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/unlink.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/unlink.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/usleep.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/usleep.c similarity index 83% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/usleep.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/usleep.c index 9171d4382..65eea28cf 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/usleep.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/usleep.c @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2009 - 2016 Xilinx, Inc. All rights reserved. +* Copyright (C) 2009 - 2017 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -48,6 +48,9 @@ * possible to generate timer in nanosecond due to * limited cpu frequency * 6.0 asa 08/15/16 Updated the usleep signature. Fix for CR#956899. +* 6.6 srm 10/18/17 Updated sleep routines to support user configurable +* implementation. Now sleep routines will use Timer +* specified by the user (i.e. Global timer/TTC timer) * </pre> * ******************************************************************************/ @@ -60,8 +63,17 @@ #include "xpseudo_asm.h" #include "xreg_cortexa9.h" +#if defined (SLEEP_TIMER_BASEADDR) +#include "xil_sleeptimer.h" +#endif + +/**************************** Constant Definitions ************************/ +#if defined (SLEEP_TIMER_BASEADDR) +#define COUNTS_PER_USECOND (SLEEP_TIMER_FREQUENCY / 1000000) +#else /* Global Timer is always clocked at half of the CPU frequency */ #define COUNTS_PER_USECOND (XPAR_CPU_CORTEXA9_CORE_CLOCK_FREQ_HZ / (2U*1000000U)) +#endif /*****************************************************************************/ /** @@ -76,8 +88,11 @@ * @note None. * ****************************************************************************/ -int usleep(unsigned long useconds) +int usleep_A9(unsigned long useconds) { +#if defined (SLEEP_TIMER_BASEADDR) + Xil_SleepTTCCommon(useconds, COUNTS_PER_USECOND); +#else XTime tEnd, tCur; XTime_GetTime(&tCur); @@ -86,6 +101,7 @@ int usleep(unsigned long useconds) { XTime_GetTime(&tCur); } while (tCur < tEnd); +#endif return 0; } diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/vectors.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/vectors.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/vectors.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/vectors.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/vectors.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/vectors.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/vectors.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/vectors.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/write.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/write.c similarity index 93% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/write.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/write.c index aaa879e73..9389f610a 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/write.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/write.c @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2009 - 2015 Xilinx, Inc. All rights reserved. +* Copyright (C) 2009 - 2018 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -82,6 +82,14 @@ write (sint32 fd, char8* buf, sint32 nbytes) __attribute__((weak)) sint32 _write (sint32 fd, char8* buf, sint32 nbytes) { +#if HYP_GUEST && EL1_NONSECURE && XEN_USE_PV_CONSOLE + sint32 length; + + (void)fd; + (void)nbytes; + length = XPVXenConsole_Write(buf); + return length; +#else #ifdef STDOUT_BASEADDRESS s32 i; char8* LocalBuf = buf; @@ -108,5 +116,6 @@ _write (sint32 fd, char8* buf, sint32 nbytes) (void)nbytes; return 0; #endif +#endif } #endif diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xbasic_types.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xbasic_types.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xbasic_types.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xbasic_types.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xdebug.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xdebug.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xdebug.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xdebug.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xenv.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xenv.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xenv.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xenv.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xenv_standalone.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xenv_standalone.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xenv_standalone.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xenv_standalone.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil-crt0.S b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil-crt0.S similarity index 91% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil-crt0.S rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil-crt0.S index 64175fef9..6beb6fd15 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil-crt0.S +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil-crt0.S @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2009 - 2015 Xilinx, Inc. All rights reserved. +* Copyright (C) 2009 - 2017 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -48,6 +48,9 @@ * initialization of uart smc nor and sram * 5.3 pkp 10/07/15 Added support for OpenAMP by not initializing global * timer when USE_AMP flag is defined +* 6.6 srm 10/18/17 Added timer configuration using XTime_StartTTCTimer API. +* Now the TTC instance as specified by the user will be +* started. * </pre> * * @note @@ -55,6 +58,7 @@ * None. * ******************************************************************************/ +#include "bspconfig.h" .file "xil-crt0.S" .section ".got2","aw" @@ -113,6 +117,11 @@ _start: mov r0, #0x0 mov r1, #0x0 + /* Reset and start Triple Timer Counter */ + #if defined SLEEP_TIMER_BASEADDR + bl XTime_StartTTCTimer + #endif + #if USE_AMP != 1 bl XTime_SetTime #endif diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_assert.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_assert.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_assert.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_assert.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_assert.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_assert.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_assert.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_assert.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_cache.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_cache.c similarity index 97% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_cache.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_cache.c index 83f68352f..259c3b1f1 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_cache.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_cache.c @@ -92,6 +92,12 @@ * 5.03 pkp 10/07/15 L2 Cache functionalities are avoided for the OpenAMP slave * application(when USE_AMP flag is defined for BSP) as master CPU * would be utilizing L2 cache for its operation +* 6.6 mus 12/07/17 Errata 753970 is not applicable for the PL130 cache controller +* version r0p2, which is present in zynq. So,removed the handling +* related to same.It fixes CR#989132. +* 6.6 asa 16/01/18 Changes made in Xil_L1DCacheInvalidate and Xil_L2CacheInvalidate +* routines to ensure the stack data flushed only when the respective +* caches are enabled. This fixes CR-992023. * * </pre> * @@ -162,11 +168,7 @@ static inline void Xil_L2CacheSync(void) static void Xil_L2CacheSync(void) #endif { -#ifdef CONFIG_PL310_ERRATA_753970 - Xil_Out32(XPS_L2CC_BASEADDR + XPS_L2CC_DUMMY_CACHE_SYNC_OFFSET, 0x0U); -#else Xil_Out32(XPS_L2CC_BASEADDR + XPS_L2CC_CACHE_SYNC_OFFSET, 0x0U); -#endif } #endif /****************************************************************************/ @@ -787,6 +789,7 @@ void Xil_L1DCacheInvalidate(void) #ifdef __GNUC__ u32 stack_start,stack_end,stack_size; + register u32 CtrlReg; #endif currmask = mfcpsr(); @@ -797,8 +800,15 @@ void Xil_L1DCacheInvalidate(void) stack_start = (u32)&__undef_stack; stack_size=stack_start-stack_end; - /*Flush stack memory to save return address*/ - Xil_DCacheFlushRange(stack_end, stack_size); + /* Check for the cache status. If cache is enabled, then only + * flush stack memory to save return address. If cache is disabled, + * dont flush anything as it might result in flushing stale date into + * memory which is undesirable. + * */ + CtrlReg = mfcp(XREG_CP15_SYS_CONTROL); + if ((CtrlReg & (XREG_CP15_CONTROL_C_BIT)) != 0U) { + Xil_DCacheFlushRange(stack_end, stack_size); + } #endif /* Select cache level 0 and D cache in CSSR */ @@ -1379,12 +1389,22 @@ void Xil_L2CacheInvalidate(void) { #ifdef __GNUC__ u32 stack_start,stack_end,stack_size; + register u32 L2CCReg; stack_end = (u32)&_stack_end; stack_start = (u32)&__undef_stack; stack_size=stack_start-stack_end; + /* Check for the cache status. If cache is enabled, then only + * flush stack memory to save return address. If cache is disabled, + * dont flush anything as it might result in flushing stale date into + * memory which is undesirable. + */ + L2CCReg = Xil_In32(XPS_L2CC_BASEADDR + XPS_L2CC_CNTRL_OFFSET); + if ((L2CCReg & 0x01U) != 0U) { /*Flush stack memory to save return address*/ - Xil_DCacheFlushRange(stack_end, stack_size); + Xil_DCacheFlushRange(stack_end, stack_size); + } + #endif u32 ResultDCache; /* Invalidate the caches */ @@ -1618,4 +1638,4 @@ void Xil_L2CacheStoreLine(u32 adr) /* synchronize the processor */ dsb(); } -#endif \ No newline at end of file +#endif diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_cache.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_cache.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_cache.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_cache.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_cache_l.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_cache_l.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_cache_l.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_cache_l.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_cache_vxworks.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_cache_vxworks.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_cache_vxworks.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_cache_vxworks.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_errata.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_errata.h similarity index 96% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_errata.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_errata.h index 800fcd562..490aebeab 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_errata.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_errata.h @@ -52,6 +52,7 @@ * Ver Who Date Changes * ----- ---- -------- ----------------------------------------------- * 1.00a srt 04/18/13 First release +* 6.6 mus 12/07/17 Removed errata 753970, It fixes CR#989132. * </pre> * ******************************************************************************/ @@ -113,15 +114,10 @@ */ #define CONFIG_PL310_ERRATA_727915 1 -/** - * Errata No: 753970 - * Description: Cache sync operation may be faulty - */ -#define CONFIG_PL310_ERRATA_753970 1 /*@}*/ #endif /* ENABLE_ARM_ERRATA */ #endif /* XIL_ERRATA_H */ /** * @} End of "addtogroup a9_errata". -*/ \ No newline at end of file +*/ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_exception.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_exception.c similarity index 86% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_exception.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_exception.c index a1dfdf6eb..d34fd2199 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_exception.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_exception.c @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2015 - 2016 Xilinx, Inc. All rights reserved. +* Copyright (C) 2015 - 2018 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -46,6 +46,12 @@ * 6.0 mus 27/07/16 Consolidated exceptions for a53,a9 and r5 * processors and added Xil_UndefinedExceptionHandler * for a53 32 bit and r5 as well. +* 6.4 mus 08/06/17 Updated debug prints to replace %x with the %lx, to +* fix the warnings. +* 6.7 mna 26/04/18 Add an API to obtain a corresponding +* Xil_ExceptionHandler entry from XExc_VectorTable. +* 6.7 asa 18/05/18 Fix bugs in the API Xil_GetExceptionRegisterHandler. +* * </pre> * *****************************************************************************/ @@ -173,6 +179,31 @@ void Xil_ExceptionRegisterHandler(u32 Exception_id, XExc_VectorTable[Exception_id].Data = Data; } +/*****************************************************************************/ +/** +* @brief Get a handler for a specific exception. This handler is being +* called when the processor encounters the specified exception. +* +* @param exception_id contains the ID of the exception source and should +* be in the range of 0 to XIL_EXCEPTION_ID_LAST. +* See xil_exception.h for further information. +* @param Handler to the Handler for that exception. +* @param Data is a reference to Data that will be passed to the +* Handler when it gets called. +* +* @return None. +* +* @note None. +* +****************************************************************************/ +void Xil_GetExceptionRegisterHandler(u32 Exception_id, + Xil_ExceptionHandler *Handler, + void **Data) +{ + *Handler = XExc_VectorTable[Exception_id].Handler; + *Data = XExc_VectorTable[Exception_id].Data; +} + /*****************************************************************************/ /** * @@ -267,8 +298,8 @@ void Xil_DataAbortHandler(void *CallBackRef){ { volatile register u32 Reg __asm(XREG_CP15_DATA_FAULT_STATUS); FaultStatus = Reg; } #endif - xdbg_printf(XDBG_DEBUG_GENERAL, "Data abort with Data Fault Status Register %x\n",FaultStatus); - xdbg_printf(XDBG_DEBUG_GENERAL, "Address of Instrcution causing Data abort %x\n",DataAbortAddr); + xdbg_printf(XDBG_DEBUG_GENERAL, "Data abort with Data Fault Status Register %lx\n",FaultStatus); + xdbg_printf(XDBG_DEBUG_GENERAL, "Address of Instruction causing Data abort %lx\n",DataAbortAddr); #endif while(1) { ; @@ -302,8 +333,8 @@ void Xil_PrefetchAbortHandler(void *CallBackRef){ { volatile register u32 Reg __asm(XREG_CP15_INST_FAULT_STATUS); FaultStatus = Reg; } #endif - xdbg_printf(XDBG_DEBUG_GENERAL, "Prefetch abort with Instruction Fault Status Register %x\n",FaultStatus); - xdbg_printf(XDBG_DEBUG_GENERAL, "Address of Instrcution causing Prefetch abort %x\n",PrefetchAbortAddr); + xdbg_printf(XDBG_DEBUG_GENERAL, "Prefetch abort with Instruction Fault Status Register %lx\n",FaultStatus); + xdbg_printf(XDBG_DEBUG_GENERAL, "Address of Instruction causing Prefetch abort %lx\n",PrefetchAbortAddr); #endif while(1) { ; @@ -324,7 +355,7 @@ void Xil_PrefetchAbortHandler(void *CallBackRef){ ****************************************************************************/ void Xil_UndefinedExceptionHandler(void *CallBackRef){ (void) CallBackRef; - xdbg_printf(XDBG_DEBUG_GENERAL, "Address of the undefined instruction %x\n",UndefinedExceptionAddr); + xdbg_printf(XDBG_DEBUG_GENERAL, "Address of the undefined instruction %lx\n",UndefinedExceptionAddr); while(1) { ; } diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_exception.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_exception.h similarity index 97% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_exception.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_exception.h index ad4822205..83303875d 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_exception.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_exception.h @@ -51,6 +51,8 @@ * ----- -------- -------- ----------------------------------------------- * 5.2 pkp 28/05/15 First release * 6.0 mus 27/07/16 Consolidated file for a53,a9 and r5 processors +* 6.7 mna 26/04/18 Add API Xil_GetExceptionRegisterHandler. +* 6.7 asa 18/05/18 Update signature of API Xil_GetExceptionRegisterHandler. * </pre> * ******************************************************************************/ @@ -235,6 +237,8 @@ extern void Xil_ExceptionRegisterHandler(u32 Exception_id, void *Data); extern void Xil_ExceptionRemoveHandler(u32 Exception_id); +extern void Xil_GetExceptionRegisterHandler(u32 Exception_id, + Xil_ExceptionHandler *Handler, void **Data); extern void Xil_ExceptionInit(void); #if defined (__aarch64__) @@ -253,4 +257,4 @@ extern void Xil_UndefinedExceptionHandler(void *CallBackRef); #endif /* XIL_EXCEPTION_H */ /** * @} End of "addtogroup arm_exception_apis". -*/ \ No newline at end of file +*/ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_hal.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_hal.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_hal.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_hal.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_io.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_io.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_io.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_io.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_io.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_io.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_io.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_io.h index 99bf4d05d..9c5aa43c7 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_io.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_io.h @@ -303,7 +303,7 @@ static INLINE u32 Xil_In32LE(UINTPTR Addr) static INLINE u32 Xil_In32BE(UINTPTR Addr) #endif { - u16 value = Xil_In32(Addr); + u32 value = Xil_In32(Addr); return Xil_EndianSwap32(value); } @@ -342,4 +342,4 @@ static INLINE void Xil_Out32BE(UINTPTR Addr, u32 Value) #endif /* end of protection macro */ /** * @} End of "addtogroup common_io_interfacing_apis". -*/ \ No newline at end of file +*/ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_macroback.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_macroback.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_macroback.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_macroback.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_mem.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_mem.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_mem.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_mem.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_mem.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_mem.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_mem.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_mem.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_misc_psreset_api.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_misc_psreset_api.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_misc_psreset_api.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_misc_psreset_api.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_misc_psreset_api.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_misc_psreset_api.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_misc_psreset_api.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_misc_psreset_api.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_mmu.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_mmu.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_mmu.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_mmu.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_mmu.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_mmu.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_mmu.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_mmu.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_printf.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_printf.c similarity index 98% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_printf.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_printf.c index 9dffed148..dc0897f0d 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_printf.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_printf.c @@ -75,8 +75,8 @@ static void outs(const charptr lp, struct params_s *par) (par->num2)--; #ifdef STDOUT_BASEADDRESS outbyte(*LocalPtr); - LocalPtr += 1; #endif + LocalPtr += 1; } /* Pad on right if needed */ @@ -135,8 +135,8 @@ static void outnum( const s32 n, const s32 base, struct params_s *par) while (&outbuf[i] >= outbuf) { #ifdef STDOUT_BASEADDRESS outbyte( outbuf[i] ); - i--; #endif + i--; } padding( par->left_flag, par); } @@ -239,6 +239,11 @@ static s32 getnum( charptr* linep) /* void esp_printf( const func_ptr f_ptr, const charptr ctrl1, ...) */ +#if HYP_GUEST && EL1_NONSECURE && XEN_USE_PV_CONSOLE +void xil_printf( const char8 *ctrl1, ...){ + XPVXenConsole_Printf(ctrl1); +} +#else void xil_printf( const char8 *ctrl1, ...) { s32 Check; @@ -262,8 +267,8 @@ void xil_printf( const char8 *ctrl1, ...) if (*ctrl != '%') { #ifdef STDOUT_BASEADDRESS outbyte(*ctrl); - ctrl += 1; #endif + ctrl += 1; continue; } @@ -434,5 +439,5 @@ void xil_printf( const char8 *ctrl1, ...) } va_end( argp); } - +#endif /*---------------------------------------------------*/ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_printf.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_printf.h similarity index 91% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_printf.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_printf.h index 2be5c5734..016ae3b2f 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xil_printf.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_printf.h @@ -10,6 +10,10 @@ extern "C" { #include <stdarg.h> #include "xil_types.h" #include "xparameters.h" +#include "bspconfig.h" +#if HYP_GUEST && EL1_NONSECURE && XEN_USE_PV_CONSOLE +#include "xen_console.h" +#endif /*----------------------------------------------------*/ /* Use the following parameter passing structure to */ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps_sinit.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_sleepcommon.c similarity index 56% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps_sinit.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_sleepcommon.c index ef3c6ea6b..972a310a8 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/ttcps_v3_3/src/xttcps_sinit.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_sleepcommon.c @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2010 - 2015 Xilinx, Inc. All rights reserved. +* Copyright (C) 2017 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -32,67 +32,75 @@ /*****************************************************************************/ /** * -* @file xttcps_sinit.c -* @addtogroup ttcps_v3_0 -* @{ +*@file xil_sleepcommon.c * -* The implementation of the XTtcPs driver's static initialization functionality. +* This file contains the sleep API's * * <pre> * MODIFICATION HISTORY: * -* Ver Who Date Changes -* ----- ------ -------- --------------------------------------------- -* 1.00a drg/jz 01/21/10 First release -* 3.00 kvn 02/13/15 Modified code for MISRA-C:2012 compliance. +* Ver Who Date Changes +* ----- -------- -------- ----------------------------------------------- +* 6.6 srm 11/02/17 First release * </pre> -* ******************************************************************************/ -/***************************** Include Files *********************************/ - -#include "xttcps.h" -#include "xparameters.h" - -/************************** Constant Definitions *****************************/ -/**************************** Type Definitions *******************************/ - -/***************** Macros (Inline Functions) Definitions *********************/ +/***************************** Include Files *********************************/ +#include "xil_io.h" +#include "sleep.h" -/************************** Function Prototypes ******************************/ +/**************************** Constant Definitions *************************/ -/************************** Variable Definitions *****************************/ -extern XTtcPs_Config XTtcPs_ConfigTable[XPAR_XTTCPS_NUM_INSTANCES]; /*****************************************************************************/ /** * -* Looks up the device configuration based on the unique device ID. A table -* contains the configuration info for each device in the system. +* This API gives delay in sec * -* @param DeviceId contains the unique ID of the device +* @param seconds - delay time in seconds * -* @return +* @return none * -* A pointer to the configuration found or NULL if the specified device ID was -* not found. See xttcps.h for the definition of XTtcPs_Config. +* @note none * -* @note None. -* -******************************************************************************/ -XTtcPs_Config *XTtcPs_LookupConfig(u16 DeviceId) -{ - XTtcPs_Config *CfgPtr = NULL; - u32 Index; +*****************************************************************************/ + void sleep(unsigned int seconds) + { +#if defined (ARMR5) + sleep_R5(seconds); +#elif defined (__aarch64__) || defined (ARMA53_32) + sleep_A53(seconds); +#elif defined (__MICROBLAZE__) + sleep_MB(seconds); +#else + sleep_A9(seconds); +#endif - for (Index = 0U; Index < (u32)XPAR_XTTCPS_NUM_INSTANCES; Index++) { - if (XTtcPs_ConfigTable[Index].DeviceId == DeviceId) { - CfgPtr = &XTtcPs_ConfigTable[Index]; - break; - } - } + } + +/****************************************************************************/ +/** +* +* This API gives delay in usec +* +* @param useconds - delay time in useconds +* +* @return none +* +* @note none +* +*****************************************************************************/ + void usleep(unsigned long useconds) + { +#if defined (ARMR5) + usleep_R5(useconds); +#elif defined (__aarch64__) || defined (ARMA53_32) + usleep_A53(useconds); +#elif defined (__MICROBLAZE__) + usleep_MB(useconds); +#else + usleep_A9(useconds); +#endif - return (XTtcPs_Config *)CfgPtr; -} -/** @} */ + } diff --git a/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_sleeptimer.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_sleeptimer.c new file mode 100644 index 000000000..5bf30ccb4 --- /dev/null +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_sleeptimer.c @@ -0,0 +1,162 @@ +/****************************************************************************** +* +* Copyright (C) 2017 - 2018 Xilinx, Inc. All rights reserved. +* +* Permission is hereby granted, free of charge, to any person obtaining a copy +* of this software and associated documentation files (the "Software"), to deal +* in the Software without restriction, including without limitation the rights +* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +* copies of the Software, and to permit persons to whom the Software is +* furnished to do so, subject to the following conditions: +* +* The above copyright notice and this permission notice shall be included in +* all copies or substantial portions of the Software. +* +* Use of the Software is limited solely to applications: +* (a) running on a Xilinx device, or +* (b) that interact with a Xilinx device through a bus or interconnect. +* +* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL +* XILINX BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF +* OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +* SOFTWARE. +* +* Except as contained in this notice, the name of the Xilinx shall not be used +* in advertising or otherwise to promote the sale, use or other dealings in +* this Software without prior written authorization from Xilinx. +* +******************************************************************************/ + +/*****************************************************************************/ +/** +* +* @file xil_sleeptimer.c +* +* This file provides the common helper routines for the sleep API's +* +* <pre> +* MODIFICATION HISTORY : +* +* Ver Who Date Changes +* ----- ---- -------- ------------------------------------------------------- +* 6.6 srm 10/18/17 First Release. +* 6.6 srm 04/20/18 Fixed compilation warning in Xil_SleepTTCCommon API +* +* </pre> +*****************************************************************************/ + +/**************************** Include Files ********************************/ + +#include "xil_io.h" +#include "xil_sleeptimer.h" +#include "xtime_l.h" + +/**************************** Constant Definitions *************************/ + + +/* Function definitions are applicable only when TTC3 is present*/ +#if defined (SLEEP_TIMER_BASEADDR) +/****************************************************************************/ +/** +* +* This is a helper function used by sleep/usleep APIs to +* have delay in sec/usec +* +* @param delay - delay time in seconds/micro seconds +* +* @param frequency - Number of counts per second/micro second +* +* @return none +* +* @note none +* +*****************************************************************************/ +void Xil_SleepTTCCommon(u32 delay, u64 frequency) +{ + u64 tEnd = 0U; + u64 tCur = 0U; + XCntrVal TimeHighVal = 0U; + XCntrVal TimeLowVal1 = 0U; + XCntrVal TimeLowVal2 = 0U; + + TimeLowVal1 = XSleep_ReadCounterVal(SLEEP_TIMER_BASEADDR + + XSLEEP_TIMER_TTC_COUNT_VALUE_OFFSET); + tEnd = (u64)TimeLowVal1 + ((u64)(delay) * frequency); + do + { + TimeLowVal2 = XSleep_ReadCounterVal(SLEEP_TIMER_BASEADDR + + XSLEEP_TIMER_TTC_COUNT_VALUE_OFFSET); + if (TimeLowVal2 < TimeLowVal1) { + TimeHighVal++; + } + TimeLowVal1 = TimeLowVal2; + tCur = (((u64) TimeHighVal) << XSLEEP_TIMER_REG_SHIFT) | + (u64)TimeLowVal2; + }while (tCur < tEnd); +} + + +/*****************************************************************************/ +/** +* +* This API starts the Triple Timer Counter +* +* @param none +* +* @return none +* +* @note none +* +*****************************************************************************/ +void XTime_StartTTCTimer() +{ + u32 TimerPrescalar; + u32 TimerCntrl; + +#if (defined (__aarch64__) && EL3==1) || defined (ARMR5) || defined (ARMA53_32) + u32 LpdRst; + + LpdRst = XSleep_ReadCounterVal(RST_LPD_IOU2); + + /* check if the timer is reset */ + if (((LpdRst & (RST_LPD_IOU2_TTC_BASE_RESET_MASK << + XSLEEP_TTC_INSTANCE)) != 0 )) { + LpdRst = LpdRst & (~(RST_LPD_IOU2_TTC_BASE_RESET_MASK << + XSLEEP_TTC_INSTANCE)); + Xil_Out32(RST_LPD_IOU2, LpdRst); + } else { +#endif + TimerCntrl = XSleep_ReadCounterVal(SLEEP_TIMER_BASEADDR + + XSLEEP_TIMER_TTC_CNT_CNTRL_OFFSET); + /* check if Timer is disabled */ + if ((TimerCntrl & XSLEEP_TIMER_TTC_CNT_CNTRL_DIS_MASK) == 0) { + TimerPrescalar = XSleep_ReadCounterVal(SLEEP_TIMER_BASEADDR + + XSLEEP_TIMER_TTC_CLK_CNTRL_OFFSET); + /* check if Timer is configured with proper functionalty for sleep */ + if ((TimerPrescalar & XSLEEP_TIMER_TTC_CLK_CNTRL_PS_EN_MASK) == 0) + return; + } +#if (defined (__aarch64__) && EL3==1) || defined (ARMR5) || defined (ARMA53_32) + } +#endif + /* Disable the timer to configure */ + TimerCntrl = XSleep_ReadCounterVal(SLEEP_TIMER_BASEADDR + + XSLEEP_TIMER_TTC_CNT_CNTRL_OFFSET); + TimerCntrl = TimerCntrl | XSLEEP_TIMER_TTC_CNT_CNTRL_DIS_MASK; + Xil_Out32(SLEEP_TIMER_BASEADDR + XSLEEP_TIMER_TTC_CNT_CNTRL_OFFSET, + TimerCntrl); + /* Disable the prescalar */ + TimerPrescalar = XSleep_ReadCounterVal(SLEEP_TIMER_BASEADDR + + XSLEEP_TIMER_TTC_CLK_CNTRL_OFFSET); + TimerPrescalar = TimerPrescalar & (~XSLEEP_TIMER_TTC_CLK_CNTRL_PS_EN_MASK); + Xil_Out32(SLEEP_TIMER_BASEADDR + XSLEEP_TIMER_TTC_CLK_CNTRL_OFFSET, + TimerPrescalar); + /* Enable the Timer */ + TimerCntrl = TimerCntrl & (~XSLEEP_TIMER_TTC_CNT_CNTRL_DIS_MASK); + Xil_Out32(SLEEP_TIMER_BASEADDR + XSLEEP_TIMER_TTC_CNT_CNTRL_OFFSET, + TimerCntrl); +} +#endif diff --git a/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_sleeptimer.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_sleeptimer.h new file mode 100644 index 000000000..4bfac0ac4 --- /dev/null +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_sleeptimer.h @@ -0,0 +1,116 @@ +/****************************************************************************** +* +* Copyright (C) 2017 Xilinx, Inc. All rights reserved. +* +* Permission is hereby granted, free of charge, to any person obtaining a copy +* of this software and associated documentation files (the "Software"), to deal +* in the Software without restriction, including without limitation the rights +* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +* copies of the Software, and to permit persons to whom the Software is +* furnished to do so, subject to the following conditions: +* +* The above copyright notice and this permission notice shall be included in +* all copies or substantial portions of the Software. +* +* Use of the Software is limited solely to applications: +* (a) running on a Xilinx device, or +* (b) that interact with a Xilinx device through a bus or interconnect. +* +* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL +* XILINX BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF +* OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +* SOFTWARE. +* +* Except as contained in this notice, the name of the Xilinx shall not be used +* in advertising or otherwise to promote the sale, use or other dealings in +* this Software without prior written authorization from Xilinx. +* +******************************************************************************/ +/*****************************************************************************/ +/** +* +* @file xil_sleeptimer.h +* +* This header file contains ARM Cortex A53,A9,R5 specific sleep related APIs. +* For sleep related functions that can be used across all Xilinx supported +* processors, please use xil_sleeptimer.h. +* +* +* <pre> +* MODIFICATION HISTORY : +* +* Ver Who Date Changes +* ----- ---- -------- ------------------------------------------------------- +* 6.6 srm 10/18/17 First Release. +* +* </pre> +*****************************************************************************/ + +#ifndef XIL_SLEEPTIMER_H /* prevent circular inclusions */ +#define XIL_SLEEPTIMER_H /* by using protection macros */ +/**************************** Include Files ********************************/ + +#include "xil_io.h" +#include "xparameters.h" +#include "bspconfig.h" + +/************************** Constant Definitions *****************************/ + +#if defined (ARMR5) || (__aarch64__) || (ARMA53_32) +#define XSLEEP_TIMER_REG_SHIFT 32U +#define XSleep_ReadCounterVal Xil_In32 +#define XCntrVal u32 +#else +#define XSLEEP_TIMER_REG_SHIFT 16U +#define XSleep_ReadCounterVal Xil_In16 +#define XCntrVal u16 +#endif + +#if defined(ARMR5) || (defined (__aarch64__) && EL3==1) || defined (ARMA53_32) +#define RST_LPD_IOU2 0xFF5E0238U +#define RST_LPD_IOU2_TTC_BASE_RESET_MASK 0x00000800U +#endif + +#if defined (SLEEP_TIMER_BASEADDR) +/** @name Register Map +* +* Register offsets from the base address of the TTC device +* +* @{ +*/ + #define XSLEEP_TIMER_TTC_CLK_CNTRL_OFFSET 0x00000000U + /**< Clock Control Register */ + #define XSLEEP_TIMER_TTC_CNT_CNTRL_OFFSET 0x0000000CU + /**< Counter Control Register*/ + #define XSLEEP_TIMER_TTC_COUNT_VALUE_OFFSET 0x00000018U + /**< Current Counter Value */ +/* @} */ +/** @name Clock Control Register +* Clock Control Register definitions of TTC +* @{ +*/ + #define XSLEEP_TIMER_TTC_CLK_CNTRL_PS_EN_MASK 0x00000001U + /**< Prescale enable */ +/* @} */ +/** @name Counter Control Register +* Counter Control Register definitions of TTC +* @{ +*/ +#define XSLEEP_TIMER_TTC_CNT_CNTRL_DIS_MASK 0x00000001U + /**< Disable the counter */ +#define XSLEEP_TIMER_TTC_CNT_CNTRL_RST_MASK 0x00000010U + /**< Reset counter */ +/* @} */ + +/**************************** Type Definitions *******************************/ + +/************************** Function Prototypes ******************************/ + +void Xil_SleepTTCCommon(u32 delay, u64 frequency); +void XTime_StartTTCTimer(); + +#endif +#endif /* XIL_SLEEPTIMER_H */ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_testcache.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_testcache.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_testcache.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_testcache.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_testcache.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_testcache.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_testcache.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_testcache.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_testio.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_testio.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_testio.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_testio.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_testio.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_testio.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_testio.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_testio.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_testmem.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_testmem.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_testmem.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_testmem.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_testmem.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_testmem.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_testmem.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_testmem.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_types.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_types.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xil_types.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xil_types.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xl2cc.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xl2cc.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xl2cc.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xl2cc.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xl2cc_counter.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xl2cc_counter.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xl2cc_counter.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xl2cc_counter.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xl2cc_counter.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xl2cc_counter.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xl2cc_counter.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xl2cc_counter.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xparameters_ps.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xparameters_ps.h similarity index 98% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xparameters_ps.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xparameters_ps.h index ea0d2bcde..0fa77710d 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xparameters_ps.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xparameters_ps.h @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2010 - 2015 Xilinx, Inc. All rights reserved. +* Copyright (C) 2010 - 2017 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -45,6 +45,8 @@ * 3.04a sdm 02/02/12 Removed some of the defines as they are being generated through * driver tcl * 5.0 pkp 01/16/15 Added interrupt ID definition of ttc for TEST APP +* 6.6 srm 10/18/17 Added ARMA9 macro to identify CortexA9 +* * </pre> * * @note @@ -60,6 +62,9 @@ extern "C" { #endif +/**************************** Include Files *******************************/ + + /************************** Constant Definitions *****************************/ /* diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xplatform_info.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xplatform_info.c similarity index 77% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xplatform_info.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xplatform_info.c index d196ceaa7..2c08e5f2e 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xplatform_info.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xplatform_info.c @@ -45,6 +45,13 @@ * 5.04 pkp 01/12/16 Added platform information support for Cortex-A53 32bit * mode * 6.00 mus 17/08/16 Removed unused variable from XGetPlatform_Info +* 6.4 ms 05/23/17 Added PSU_PMU macro to support XGetPSVersion_Info +* function for PMUFW. +* ms 06/13/17 Added PSU_PMU macro to provide support of +* XGetPlatform_Info function for PMUFW. +* mus 08/17/17 Add EL1 NS mode support for +* XGet_Zynq_UltraMp_Platform_info and XGetPSVersion_Info +* APIs. * </pre> * ******************************************************************************/ @@ -54,7 +61,10 @@ #include "xil_types.h" #include "xil_io.h" #include "xplatform_info.h" - +#if defined (__aarch64__) +#include "bspconfig.h" +#include "xil_smc.h" +#endif /************************** Constant Definitions *****************************/ /**************************** Type Definitions *******************************/ @@ -79,7 +89,7 @@ u32 XGetPlatform_Info() { -#if defined (ARMR5) || (__aarch64__) || (ARMA53_32) +#if defined (ARMR5) || (__aarch64__) || (ARMA53_32) || (PSU_PMU) return XPLAT_ZYNQ_ULTRA_MP; #elif (__microblaze__) return XPLAT_MICROBLAZE; @@ -102,9 +112,20 @@ u32 XGetPlatform_Info() #if defined (ARMR5) || (__aarch64__) || (ARMA53_32) u32 XGet_Zynq_UltraMp_Platform_info() { +#if EL1_NONSECURE + XSmc_OutVar reg; + /* + * This SMC call will return, + * idcode - upper 32 bits of reg.Arg0 + * version - lower 32 bits of reg.Arg1 + */ + reg = Xil_Smc(GET_CHIPID_SMC_FID,0,0, 0, 0, 0, 0, 0); + return (u32)((reg.Arg1 >> XPLAT_INFO_SHIFT) & XPLAT_INFO_MASK); +#else u32 reg; reg = ((Xil_In32(XPAR_CSU_BASEADDR + XPAR_CSU_VER_OFFSET) >> 12U )& XPLAT_INFO_MASK); return reg; +#endif } #endif @@ -118,12 +139,23 @@ u32 XGet_Zynq_UltraMp_Platform_info() * @return The information about PS Silicon version. * ******************************************************************************/ -#if defined (ARMR5) || (__aarch64__) || (ARMA53_32) +#if defined (ARMR5) || (__aarch64__) || (ARMA53_32) || (PSU_PMU) u32 XGetPSVersion_Info() { +#if EL1_NONSECURE + /* + * This SMC call will return, + * idcode - upper 32 bits of reg.Arg0 + * version - lower 32 bits of reg.Arg1 + */ + XSmc_OutVar reg; + reg = Xil_Smc(GET_CHIPID_SMC_FID,0,0, 0, 0, 0, 0, 0); + return (u32)(reg.Arg1 & XPS_VERSION_INFO_MASK); +#else u32 reg; reg = (Xil_In32(XPAR_CSU_BASEADDR + XPAR_CSU_VER_OFFSET) & XPS_VERSION_INFO_MASK); return reg; +#endif } #endif diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xplatform_info.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xplatform_info.h similarity index 88% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xplatform_info.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xplatform_info.h index 27c0b5851..0582222bc 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xplatform_info.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xplatform_info.h @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2014 - 2015 Xilinx, Inc. All rights reserved. +* Copyright (C) 2014 - 2017 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -41,6 +41,15 @@ * platform information. * * @{ +* <pre> +* MODIFICATION HISTORY: +* +* Ver Who Date Changes +* ----- ---- --------- ------------------------------------------------------- +* 6.4 ms 05/23/17 Added PSU_PMU macro to support XGetPSVersion_Info +* function for PMUFW. +* </pre> +* ******************************************************************************/ #ifndef XPLATFORM_INFO_H /* prevent circular inclusions */ @@ -70,6 +79,7 @@ extern "C" { #define XPS_VERSION_2 0x1 #define XPLAT_INFO_MASK (0xF) +#define XPLAT_INFO_SHIFT (0xC) #define XPS_VERSION_INFO_MASK (0xF) /**************************** Type Definitions *******************************/ @@ -79,7 +89,7 @@ extern "C" { u32 XGetPlatform_Info(); -#if defined (ARMR5) || (__aarch64__) || (ARMA53_32) +#if defined (ARMR5) || (__aarch64__) || (ARMA53_32) || (PSU_PMU) u32 XGetPSVersion_Info(); #endif @@ -96,4 +106,4 @@ u32 XGet_Zynq_UltraMp_Platform_info(); #endif /* end of protection macro */ /** * @} End of "addtogroup common_platform_info". -*/ \ No newline at end of file +*/ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xpm_counter.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xpm_counter.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xpm_counter.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xpm_counter.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xpm_counter.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xpm_counter.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xpm_counter.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xpm_counter.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xpseudo_asm.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xpseudo_asm.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xpseudo_asm.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xpseudo_asm.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xpseudo_asm_gcc.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xpseudo_asm_gcc.h similarity index 96% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xpseudo_asm_gcc.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xpseudo_asm_gcc.h index 1b6726394..37971bc59 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xpseudo_asm_gcc.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xpseudo_asm_gcc.h @@ -120,6 +120,13 @@ extern "C" { rval;\ }) +#define mfelrel3() ({u64 rval = 0U; \ + asm volatile("mrs %0, ELR_EL3" : "=r" (rval));\ + rval;\ + }) + +#define mtelrel3(v) __asm__ __volatile__ ("msr ELR_EL3, %0" : : "r" (v)) + #else /* pseudo assembler instructions */ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xreg_cortexa9.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xreg_cortexa9.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xreg_cortexa9.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xreg_cortexa9.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xstatus.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xstatus.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xstatus.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xstatus.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xtime_l.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xtime_l.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/standalone_v6_2/src/xtime_l.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xtime_l.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xtime_l.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xtime_l.h similarity index 90% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xtime_l.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xtime_l.h index f939d84f6..9b872b6cb 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xtime_l.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/standalone_v6_7/src/xtime_l.h @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2009 - 2015 Xilinx, Inc. All rights reserved. +* Copyright (C) 2009 - 2017 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -48,6 +48,8 @@ * 3.06a sgd 05/15/12 Upadted get/set time functions to make use Global Timer * 3.06a asa 06/17/12 Reverted back the changes to make use Global Timer. * 3.07a sgd 07/05/12 Upadted get/set time functions to make use Global Timer +* 6.6 srm 10/23/17 Updated the macros to support user configurable sleep +* implementation * </pre> * ******************************************************************************/ @@ -76,9 +78,16 @@ typedef u64 XTime; #define GTIMER_COUNTER_UPPER_OFFSET 0x04U #define GTIMER_CONTROL_OFFSET 0x08U - +#if defined (SLEEP_TIMER_BASEADDR) +#define COUNTS_PER_SECOND (SLEEP_TIMER_FREQUENCY) +#else /* Global Timer is always clocked at half of the CPU frequency */ #define COUNTS_PER_SECOND (XPAR_CPU_CORTEXA9_CORE_CLOCK_FREQ_HZ /2) +#endif + +#if defined (XSLEEP_TIMER_IS_DEFAULT_TIMER) +#pragma message ("For the sleep routines, Global timer is being used") +#endif /************************** Variable Definitions *****************************/ /************************** Function Prototypes ******************************/ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/Makefile b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/Makefile similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/Makefile rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/Makefile diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps.c index 1a2c708ba..c33ec5481 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps.c @@ -33,7 +33,7 @@ /** * * @file xuartps.c -* @addtogroup uartps_v3_1 +* @addtogroup uartps_v3_5 * @{ * * This file contains the implementation of the interface functions for XUartPs @@ -49,6 +49,7 @@ * baud rate. CR# 804281. * 3.00 kvn 02/13/15 Modified code for MISRA-C:2012 compliance. * 3.1 kvn 04/10/15 Modified code for latest RTL changes. +* 3.5 NK 09/26/17 Fix the RX Buffer Overflow issue. * </pre> * *****************************************************************************/ @@ -463,7 +464,7 @@ u32 XUartPs_ReceiveBuffer(XUartPs *InstancePtr) * Loop until there is no more data in RX FIFO or the specified * number of bytes has been received */ - while((ReceivedCount <= InstancePtr->ReceiveBuffer.RemainingBytes)&& + while((ReceivedCount < InstancePtr->ReceiveBuffer.RemainingBytes)&& (((CsrRegister & XUARTPS_SR_RXEMPTY) == (u32)0))){ if (InstancePtr->is_rxbs_error) { diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps.h similarity index 98% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps.h index a5155940e..33758c23b 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps.h @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2010 - 2015 Xilinx, Inc. All rights reserved. +* Copyright (C) 2010 - 2017 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -33,7 +33,7 @@ /** * * @file xuartps.h -* @addtogroup uartps_v3_1 +* @addtogroup uartps_v3_5 * @{ * @details * @@ -168,6 +168,8 @@ * for CR-965028. * ms 03/17/17 Added readme.txt file in examples folder for doxygen * generation. +* 3.6 ms 02/16/18 Updates the flow control mode offset value in modem +* control register. * * </pre> * diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps_g.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps_g.c similarity index 97% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps_g.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps_g.c index b76d00b2a..ed841e0ba 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps_g.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps_g.c @@ -5,7 +5,7 @@ * Version: * DO NOT EDIT. * -* Copyright (C) 2010-2017 Xilinx, Inc. All Rights Reserved.* +* Copyright (C) 2010-2018 Xilinx, Inc. All Rights Reserved.* *Permission is hereby granted, free of charge, to any person obtaining a copy *of this software and associated documentation files (the Software), to deal *in the Software without restriction, including without limitation the rights diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps_hw.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps_hw.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps_hw.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps_hw.c index 299dd35ae..724c3cb40 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps_hw.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps_hw.c @@ -33,7 +33,7 @@ /** * * @file xuartps_hw.c -* @addtogroup uartps_v3_1 +* @addtogroup uartps_v3_5 * @{ * * diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xuartps_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps_hw.h similarity index 98% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xuartps_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps_hw.h index 9f5f0b700..9a2bc4305 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xuartps_hw.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps_hw.h @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (C) 2010 - 2015 Xilinx, Inc. All rights reserved. +* Copyright (C) 2010 - 2017 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -33,7 +33,7 @@ /** * * @file xuartps_hw.h -* @addtogroup uartps_v3_1 +* @addtogroup uartps_v3_5 * @{ * * This header file contains the hardware interface of an XUartPs device. @@ -55,6 +55,8 @@ * constant definitions. * 3.00 kvn 02/13/15 Modified code for MISRA-C:2012 compliance. * 3.1 kvn 04/10/15 Modified code for latest RTL changes. +* 3.6 ms 02/16/18 Updates flow control mode offset value in +* modem control register. * * </pre> * @@ -256,7 +258,7 @@ extern "C" { * * @{ */ -#define XUARTPS_MODEMCR_FCM 0x00000010U /**< Flow control mode */ +#define XUARTPS_MODEMCR_FCM 0x00000020U /**< Flow control mode */ #define XUARTPS_MODEMCR_RTS 0x00000002U /**< Request to send */ #define XUARTPS_MODEMCR_DTR 0x00000001U /**< Data terminal ready */ /* @} */ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps_intr.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps_intr.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps_intr.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps_intr.c index 3068ee795..dff02fd63 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps_intr.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps_intr.c @@ -33,7 +33,7 @@ /** * * @file xuartps_intr.c -* @addtogroup uartps_v3_1 +* @addtogroup uartps_v3_5 * @{ * * This file contains the functions for interrupt handling diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps_options.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps_options.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps_options.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps_options.c index 9a699afa1..5d8d3017c 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps_options.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps_options.c @@ -33,7 +33,7 @@ /** * * @file xuartps_options.c -* @addtogroup uartps_v3_1 +* @addtogroup uartps_v3_5 * @{ * * The implementation of the options functions for the XUartPs driver. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps_selftest.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps_selftest.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps_selftest.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps_selftest.c index a1a7dd366..de58201a1 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps_selftest.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps_selftest.c @@ -33,7 +33,7 @@ /** * * @file xuartps_selftest.c -* @addtogroup uartps_v3_1 +* @addtogroup uartps_v3_5 * @{ * * This file contains the self-test functions for the XUartPs driver. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps_sinit.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps_sinit.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps_sinit.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps_sinit.c index 8dc87dae3..22e2f7a83 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/uartps_v3_4/src/xuartps_sinit.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/uartps_v3_6/src/xuartps_sinit.c @@ -33,7 +33,7 @@ /** * * @file xuartps_sinit.c -* @addtogroup uartps_v3_1 +* @addtogroup uartps_v3_5 * @{ * * The implementation of the XUartPs driver's static initialzation diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/Makefile b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/Makefile similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/Makefile rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/Makefile diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps.c index 897c09497..b76c94a46 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps.c @@ -32,7 +32,7 @@ /******************************************************************************/ /** * @file xusbps.c -* @addtogroup usbps_v2_2 +* @addtogroup usbps_v2_4 * @{ * * The XUsbPs driver. Functions in this file are the minimum required diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xusbps.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xusbps.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps.h index 4a4492cdc..b5c472ef9 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xusbps.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps.h @@ -33,7 +33,7 @@ /** * * @file xusbps.h -* @addtogroup usbps_v2_2 +* @addtogroup usbps_v2_4 * @{ * @details * @@ -185,6 +185,8 @@ * 2.4 sg 04/26/16 Fixed CR#949693, Corrected the logic for EP flush * ms 03/17/17 Added readme.txt file in examples folder for doxygen * generation. + * ms 04/10/17 Modified filename tag to include the file in doxygen + * examples. * </pre> * ******************************************************************************/ diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_endpoint.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_endpoint.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_endpoint.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_endpoint.c index f93c4b800..7b16d22b5 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_endpoint.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_endpoint.c @@ -32,7 +32,7 @@ /******************************************************************************/ /** * @file xusbps_endpoint.c -* @addtogroup usbps_v2_2 +* @addtogroup usbps_v2_4 * @{ * * Endpoint specific function implementations. diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xusbps_endpoint.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_endpoint.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xusbps_endpoint.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_endpoint.h index b8b9ad685..1cb0cfcd3 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xusbps_endpoint.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_endpoint.h @@ -33,7 +33,7 @@ /** * * @file xusbps_endpoint.h -* @addtogroup usbps_v2_2 +* @addtogroup usbps_v2_4 * @{ * * This is an internal file containung the definitions for endpoints. It is diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_g.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_g.c similarity index 96% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_g.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_g.c index 79b2959ca..947f86f29 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_g.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_g.c @@ -5,7 +5,7 @@ * Version: * DO NOT EDIT. * -* Copyright (C) 2010-2017 Xilinx, Inc. All Rights Reserved.* +* Copyright (C) 2010-2018 Xilinx, Inc. All Rights Reserved.* *Permission is hereby granted, free of charge, to any person obtaining a copy *of this software and associated documentation files (the Software), to deal *in the Software without restriction, including without limitation the rights diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_hw.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_hw.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_hw.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_hw.c index 105ad9321..04963b288 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_hw.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_hw.c @@ -33,7 +33,7 @@ /** * * @file xusbps_hw.c -* @addtogroup usbps_v2_2 +* @addtogroup usbps_v2_4 * @{ * * The implementation of the XUsbPs interface reset functionality diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_hw.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_hw.h index 792fbdde5..69f3ebffb 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_hw.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_hw.h @@ -33,7 +33,7 @@ /** * * @file xusbps_hw.h -* @addtogroup usbps_v2_2 +* @addtogroup usbps_v2_4 * @{ * * This header file contains identifiers and low-level driver functions (or diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_intr.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_intr.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_intr.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_intr.c index 94fd3dee6..83463bdfe 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_intr.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_intr.c @@ -32,7 +32,7 @@ /******************************************************************************/ /** * @file xusbps_intr.c -* @addtogroup usbps_v2_2 +* @addtogroup usbps_v2_4 * @{ * * This file contains the functions that are related to interrupt processing diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_sinit.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_sinit.c similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_sinit.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_sinit.c index 1da441db5..a2070a76e 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_sinit.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/usbps_v2_4/src/xusbps_sinit.c @@ -33,7 +33,7 @@ /** * * @file xusbps_sinit.c -* @addtogroup usbps_v2_2 +* @addtogroup usbps_v2_4 * @{ * * The implementation of the XUsbPs driver's static initialzation diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/Makefile b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/Makefile similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/Makefile rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/Makefile diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xadcps.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps.h similarity index 99% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xadcps.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps.h index 9b6737d37..549bfff29 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/include/xadcps.h +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps.h @@ -176,7 +176,9 @@ * for CR-965028. * ms 03/17/17 Added readme.txt file in examples folder for doxygen * generation. -* +* ms 04/05/17 Modified Comment lines in functions of xadcps +* examples to recognize it as documentation block +* for doxygen generation. * * </pre> * diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_g.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_g.c similarity index 96% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_g.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_g.c index 09c6b9d06..157bd00bd 100644 --- a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_g.c +++ b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_g.c @@ -5,7 +5,7 @@ * Version: * DO NOT EDIT. * -* Copyright (C) 2010-2017 Xilinx, Inc. All Rights Reserved.* +* Copyright (C) 2010-2018 Xilinx, Inc. All Rights Reserved.* *Permission is hereby granted, free of charge, to any person obtaining a copy *of this software and associated documentation files (the Software), to deal *in the Software without restriction, including without limitation the rights diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_hw.h b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_hw.h similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_hw.h rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_hw.h diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_intr.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_intr.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_intr.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_intr.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_selftest.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_selftest.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_selftest.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_selftest.c diff --git a/quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_sinit.c b/quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_sinit.c similarity index 100% rename from quad/xsdk_workspace_vivado/standalone_bsp_0/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_sinit.c rename to quad/xsdk_workspace_vivado/system_bsp/ps7_cortexa9_0/libsrc/xadcps_v2_2/src/xadcps_sinit.c diff --git a/quad/xsdk_workspace_vivado/system_bsp/system.mss b/quad/xsdk_workspace_vivado/system_bsp/system.mss index 5f6ae5d99..6a49ec106 100644 --- a/quad/xsdk_workspace_vivado/system_bsp/system.mss +++ b/quad/xsdk_workspace_vivado/system_bsp/system.mss @@ -4,7 +4,7 @@ BEGIN OS PARAMETER OS_NAME = standalone - PARAMETER OS_VER = 6.2 + PARAMETER OS_VER = 6.7 PARAMETER PROC_INSTANCE = ps7_cortexa9_0 PARAMETER stdin = ps7_uart_0 PARAMETER stdout = ps7_uart_0 @@ -13,7 +13,7 @@ END BEGIN PROCESSOR PARAMETER DRIVER_NAME = cpu_cortexa9 - PARAMETER DRIVER_VER = 2.4 + PARAMETER DRIVER_VER = 2.6 PARAMETER HW_INSTANCE = ps7_cortexa9_0 END @@ -30,6 +30,18 @@ BEGIN DRIVER PARAMETER HW_INSTANCE = axi_gpio_1 END +BEGIN DRIVER + PARAMETER DRIVER_NAME = gpio + PARAMETER DRIVER_VER = 4.3 + PARAMETER HW_INSTANCE = axi_gpio_2 +END + +BEGIN DRIVER + PARAMETER DRIVER_NAME = gpio + PARAMETER DRIVER_VER = 4.3 + PARAMETER HW_INSTANCE = axi_gpio_3 +END + BEGIN DRIVER PARAMETER DRIVER_NAME = generic PARAMETER DRIVER_VER = 2.0 @@ -74,7 +86,7 @@ END BEGIN DRIVER PARAMETER DRIVER_NAME = devcfg - PARAMETER DRIVER_VER = 3.4 + PARAMETER DRIVER_VER = 3.5 PARAMETER HW_INSTANCE = ps7_dev_cfg_0 END @@ -92,7 +104,7 @@ END BEGIN DRIVER PARAMETER DRIVER_NAME = emacps - PARAMETER DRIVER_VER = 3.4 + PARAMETER DRIVER_VER = 3.7 PARAMETER HW_INSTANCE = ps7_ethernet_0 END @@ -104,7 +116,7 @@ END BEGIN DRIVER PARAMETER DRIVER_NAME = gpiops - PARAMETER DRIVER_VER = 3.2 + PARAMETER DRIVER_VER = 3.3 PARAMETER HW_INSTANCE = ps7_gpio_0 END @@ -116,13 +128,13 @@ END BEGIN DRIVER PARAMETER DRIVER_NAME = iicps - PARAMETER DRIVER_VER = 3.5 + PARAMETER DRIVER_VER = 3.7 PARAMETER HW_INSTANCE = ps7_i2c_0 END BEGIN DRIVER PARAMETER DRIVER_NAME = iicps - PARAMETER DRIVER_VER = 3.5 + PARAMETER DRIVER_VER = 3.7 PARAMETER HW_INSTANCE = ps7_i2c_1 END @@ -164,7 +176,7 @@ END BEGIN DRIVER PARAMETER DRIVER_NAME = qspips - PARAMETER DRIVER_VER = 3.3 + PARAMETER DRIVER_VER = 3.4 PARAMETER HW_INSTANCE = ps7_qspi_0 END @@ -194,7 +206,7 @@ END BEGIN DRIVER PARAMETER DRIVER_NAME = scugic - PARAMETER DRIVER_VER = 3.6 + PARAMETER DRIVER_VER = 3.9 PARAMETER HW_INSTANCE = ps7_scugic_0 END @@ -212,7 +224,7 @@ END BEGIN DRIVER PARAMETER DRIVER_NAME = sdps - PARAMETER DRIVER_VER = 3.2 + PARAMETER DRIVER_VER = 3.5 PARAMETER HW_INSTANCE = ps7_sd_0 END @@ -222,21 +234,15 @@ BEGIN DRIVER PARAMETER HW_INSTANCE = ps7_slcr_0 END -BEGIN DRIVER - PARAMETER DRIVER_NAME = ttcps - PARAMETER DRIVER_VER = 3.3 - PARAMETER HW_INSTANCE = ps7_ttc_0 -END - BEGIN DRIVER PARAMETER DRIVER_NAME = uartps - PARAMETER DRIVER_VER = 3.4 + PARAMETER DRIVER_VER = 3.6 PARAMETER HW_INSTANCE = ps7_uart_0 END BEGIN DRIVER PARAMETER DRIVER_NAME = uartps - PARAMETER DRIVER_VER = 3.4 + PARAMETER DRIVER_VER = 3.6 PARAMETER HW_INSTANCE = ps7_uart_1 END -- GitLab