evmdm642_echo.cdb
上传用户:dahaojd
上传日期:2008-01-29
资源大小:14357k
文件大小:1015k
源码类别:

DSP编程

开发平台:

C/C++

  1.         prop Style :: 0x01 | 0x02
  2.         prop JSName :: "emifCectl3WriteStrobe"
  3.         prop Visible :: 1
  4.         prop Writable :: (CSL.EMIF_SUPPORT) && 1
  5.         prop NoGen :: 1
  6.         prop TabName :: "CE3 Space"
  7.         prop Set :: (if ($1 < 0 || $1 > 63) {self.error(" Minimum strobe :0 cycle - Maximum strobe: 63 cycles")} else {self.WRSTRB3_SETUP = $1, self.CECTL3_VALUE = self.CECTL3_VALUE_update(), "ok"})
  8.     }
  9.     inst WRSETUP3_SETUP :: 15 { 
  10.         prop Label :: "Write Setup Width "
  11.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  12.         prop Style :: 0x01 | 0x02
  13.         prop JSName :: "emifCectl3WriteSetup"
  14.         prop Visible :: 1
  15.         prop Writable :: (CSL.EMIF_SUPPORT) && 1
  16.         prop NoGen :: 1
  17.         prop TabName :: "CE3 Space"
  18.         prop Set :: (if ($1 < 0 || $1 > 15) {self.error(" Minimum setup :0 cycle - Maximum setup: 15 cycles")} else {self.WRSETUP3_SETUP = $1, self.CECTL3_VALUE = self.CECTL3_VALUE_update(), "ok"})
  19.     }
  20.     inst WRHLD3_SETUP :: 3 { 
  21.         prop Label :: "Write Hold Width "
  22.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  23.         prop Style :: 0x01 | 0x02
  24.         prop JSName :: "emifCectl3WriteHold"
  25.         prop Visible :: 1
  26.         prop Writable :: (CSL.EMIF_SUPPORT) && 1
  27.         prop NoGen :: 1
  28.         prop TabName :: "CE3 Space"
  29.         prop Set :: (if ((!CSL.C11_SUPPORT)) {if ($1 < 0 || $1 > 3) {self.error(" Minimum hold :0 cycle - Maximum hold: 3 cycles")} else {self.WRHLD3_SETUP = $1, self.CECTL3_VALUE = self.CECTL3_VALUE_update(), "ok"}} else {if ($1 < 0 || $1 > 3) {self.error(" Minimum hold :0 cycle - Maximum hold: 3 cycles")} else {self.WRHLD3_SETUP = $1, self.CECTL3_VALUE = self.CECTL3_VALUE_update(), "ok"}})
  30.     }
  31.     inst TA3_SETUP :: 3 { 
  32.         prop Label :: "Turn around time (TA) "
  33.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  34.         prop Style :: 0x01 | 0x02
  35.         prop JSName :: "emifCectl3Ta"
  36.         prop Visible :: 1
  37.         prop Writable :: (CSL.EMIF_SUPPORT) && (if (CSL.C11_SUPPORT) {1} else {0})
  38.         prop NoGen :: 1
  39.         prop TabName :: "CE3 Space"
  40.         prop Set :: (if ($1 < 1 || $1 > 3) {self.error(" Minimum: 1 ECLKOUT cycle - Maximum : 3 ECLKOUT cycles")} else {self.TA3_SETUP = $1, self.CECTL3_VALUE = self.CECTL3_VALUE_update(), "ok"})
  41.     }
  42.     inst TRC_SETUP :: 15 { 
  43.         prop Label :: "TRC = trc/(clk period-1) (TRC) "
  44.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  45.         prop Style :: 0x01 | 0x02
  46.         prop JSName :: "emifSdctlTrc"
  47.         prop Visible :: 1
  48.         prop Writable :: (CSL.EMIF_SUPPORT) && 1
  49.         prop NoGen :: 1
  50.         prop TabName :: "SDRAM Control"
  51.         prop Set :: (if ($1 < 0 || $1 > 15) {self.error("Minimum TRC = 0 - Maximum TRC = 15 ")} else {self.TRC_SETUP = $1, self.SDCTL_VALUE = self.SDCTL_VALUE_update(), "ok"})
  52.     }
  53.     inst TRP_SETUP :: 8 { 
  54.         prop Label :: "TRP = trp/(clk period-1) (TRP) "
  55.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  56.         prop Style :: 0x01 | 0x02
  57.         prop JSName :: "emifSdctlTrp"
  58.         prop Visible :: 1
  59.         prop Writable :: (CSL.EMIF_SUPPORT) && 1
  60.         prop NoGen :: 1
  61.         prop TabName :: "SDRAM Control"
  62.         prop Set :: (if ($1 < 0 || $1 > 15) {self.error("Minimum TRP = 0 - Maximum TRP= 15 ")} else {self.TRP_SETUP = $1, self.SDCTL_VALUE = self.SDCTL_VALUE_update(), "ok"})
  63.     }
  64.     inst TRCD_SETUP :: self.TRCD_Init { 
  65.         prop Label :: "TRCD = trcd/(clk period-1) (TRCD) "
  66.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  67.         prop Style :: 0x01 | 0x02
  68.         prop JSName :: "emifSdctlTrcd"
  69.         prop Visible :: 1
  70.         prop Writable :: (CSL.EMIF_SUPPORT) && 1
  71.         prop NoGen :: 1
  72.         prop TabName :: "SDRAM Control"
  73.         prop Set :: (if ($1 < 0 || $1 > 15) {self.error("Minimum TRCD = 0 - Maximum TRCD= 15 ")} else {self.TRCD_SETUP = $1, self.SDCTL_VALUE = self.SDCTL_VALUE_update(), "ok"})
  74.     }
  75.     inst INIT_SETUP :: "Initialize" { 
  76.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  77.         prop Enum :: "Initialize,No effect"
  78.         prop Label :: "Initialization of all SDRAMs (INIT)"
  79.         prop JSName :: "emifSdctlInit"
  80.         prop Visible :: 1
  81.         prop Writable :: (CSL.EMIF_SUPPORT) && 1
  82.         prop NoGen :: 1
  83.         prop TabName :: "SDRAM Control"
  84.         prop Set :: (self.INIT_SETUP = $1, self.SDCTL_VALUE = self.SDCTL_VALUE_update(), "ok")
  85.     }
  86.     inst RFEN_SETUP :: "Enable" { 
  87.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  88.         prop Enum :: "Enable,Disable"
  89.         prop Label :: "SDRAM Refresh Enable (RFEN)"
  90.         prop JSName :: "emifSdctlRfen"
  91.         prop Visible :: 1
  92.         prop Writable :: (CSL.EMIF_SUPPORT) && 1
  93.         prop NoGen :: 1
  94.         prop TabName :: "SDRAM Control"
  95.         prop Set :: (self.RFEN_SETUP = $1, self.SDCTL_VALUE = self.SDCTL_VALUE_update(), "ok")
  96.     }
  97.     inst SDWID_SETUP :: "Four 8-bit SDRAMs" { 
  98.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  99.         prop Enum :: "Four 8-bit SDRAMs,Two 16-bit SDRAMs"
  100.         prop Label :: "Width Select (SDWID)"
  101.         prop JSName :: "emifSdctlSdwid"
  102.         prop Visible :: if ((!CSL.C11_SUPPORT)) {1} else {0}
  103.         prop Writable :: if (CSL.EMIF_SUPPORT) && ((!CSL.C11_SUPPORT)) {1} else {0}
  104.         prop NoGen :: 1
  105.         prop TabName :: "SDRAM Control"
  106.         prop Set :: (self.SDWID_SETUP = $1, self.SDCTL_VALUE = self.SDCTL_VALUE_update(), "ok")
  107.     }
  108.     inst PERIOD_SETUP1 :: 64 { 
  109.         prop Label :: "Refresh Period (CLKOUT2 cycles)"
  110.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  111.         prop Style :: 0x01 | 0x02
  112.         prop JSName :: "emifSdtimClk2Period"
  113.         prop Visible :: if ((!CSL.C11_SUPPORT)) {1} else {0}
  114.         prop Writable :: if (CSL.EMIF_SUPPORT) && ((!CSL.C11_SUPPORT)) {1} else {0}
  115.         prop NoGen :: 1
  116.         prop TabName :: "SDRAM Control"
  117.         prop Set :: (if ($1 < 1 || $1 > 4095) {self.error("Refresh Period range [1..4095] clk. cycl.")} else {self.PERIOD_SETUP1 = $1, self.SDTIM_VALUE = self.SDTIM_VALUE_update(), "ok"})
  118.     }
  119.     inst SDCSZ_SETUP :: " 9 addresses" { 
  120.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  121.         prop Enum :: " 9 addresses, 8 addresses,10 addresses"
  122.         prop Label :: "Column Size (SDCSZ)"
  123.         prop JSName :: "emifSdctlSdcsz"
  124.         prop Visible :: if ((CSL.C11_SUPPORT)) {1} else {0}
  125.         prop Writable :: if (CSL.EMIF_SUPPORT) && ((CSL.C11_SUPPORT)) {1} else {0}
  126.         prop NoGen :: 1
  127.         prop TabName :: "SDRAM Control"
  128.         prop Set :: (self.SDCSZ_SETUP = $1, self.SDCTL_VALUE = self.SDCTL_VALUE_update(), "ok")
  129.     }
  130.     inst SDRSZ_SETUP :: "11 addresses" { 
  131.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  132.         prop Enum :: "11 addresses,12 addresses,13 addresses"
  133.         prop Label :: "Row Size (SDRSZ)"
  134.         prop JSName :: "emifSdctlSdrsz"
  135.         prop Visible :: if ((CSL.C11_SUPPORT)) {1} else {0}
  136.         prop Writable :: if (CSL.EMIF_SUPPORT) && ((CSL.C11_SUPPORT)) {1} else {0}
  137.         prop NoGen :: 1
  138.         prop TabName :: "SDRAM Control"
  139.         prop Set :: (self.SDRSZ_SETUP = $1, self.SDCTL_VALUE = self.SDCTL_VALUE_update(), "ok")
  140.     }
  141.     inst SDBSZ_SETUP :: "Two banks" { 
  142.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  143.         prop Enum :: "Two banks,Four banks"
  144.         prop Label :: "Bank Size (SDBSZ)"
  145.         prop JSName :: "emifSdctlSdbsz"
  146.         prop Visible :: if ((CSL.C11_SUPPORT)) {1} else {0}
  147.         prop Writable :: if (CSL.EMIF_SUPPORT) && ((CSL.C11_SUPPORT)) {1} else {0}
  148.         prop NoGen :: 1
  149.         prop TabName :: "SDRAM Control"
  150.         prop Set :: (self.SDBSZ_SETUP = $1, self.SDCTL_VALUE = self.SDCTL_VALUE_update(), "ok")
  151.     }
  152.     inst PERIOD_SETUP2 :: 1500 { 
  153.         prop Label :: "Refresh Period (ECLKOUT cycles)"
  154.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  155.         prop Style :: 0x01 | 0x02
  156.         prop JSName :: "emifSdtimEclkPeriod"
  157.         prop Visible :: if ((CSL.C11_SUPPORT)) {1} else {0}
  158.         prop Writable :: if (CSL.EMIF_SUPPORT) && ((CSL.C11_SUPPORT)) {1} else {0}
  159.         prop NoGen :: 1
  160.         prop TabName :: "SDRAM Control"
  161.         prop Set :: (if ($1 < 1 || $1 > 4096) {self.error("1 cyc. < PERIOD < 4096 cyc. ")} else {self.PERIOD_SETUP2 = $1, self.SDTIM_VALUE = self.SDTIM_VALUE_update(), "ok"})
  162.     }
  163.     inst XRFR_SETUP :: 1 { 
  164.         prop Label :: "Extra Refreshes Ctrl. (XRFR)"
  165.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  166.         prop Style :: 0x01 | 0x02
  167.         prop JSName :: "emifSdctlXrfr"
  168.         prop Visible :: if ((CSL.C11_SUPPORT)) {1} else {0}
  169.         prop Writable :: if (CSL.EMIF_SUPPORT) && ((CSL.C11_SUPPORT)) {1} else {0}
  170.         prop NoGen :: 1
  171.         prop TabName :: "SDRAM Control"
  172.         prop Set :: (if ($1 < 1 || $1 > 4) {self.error("1 < Extra refreshes < 4 ")} else {self.XRFR_SETUP = $1, self.SDTIM_VALUE = self.SDTIM_VALUE_update(), "ok"})
  173.     }
  174.     inst TCL_SETUP :: 3 { 
  175.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  176.         prop Label :: "CAS Latency (TCL)"
  177.         prop Style :: 0x01 | 0x02
  178.         prop JSName :: "emifSdextTcl"
  179.         prop Visible :: 1
  180.         prop Writable :: if (CSL.EMIF_SUPPORT) && ((CSL.C11_SUPPORT)) {1} else {0}
  181.         prop NoGen :: 1
  182.         prop TabName :: "SDRAM More Opt."
  183.         prop Set :: (if ($1 < 2 || $1 > 3) {self.error("TCL : 2 or 3 ECLKOUT cycles ")} else {self.TCL_SETUP = $1, self.SDEXT_VALUE = self.SDEXT_VALUE_update(), "ok"})
  184.     }
  185.     inst TRAS_SETUP :: 8 { 
  186.         prop Label :: "tras = TRAS + 1 (ECLKOUT cyc.)"
  187.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  188.         prop Style :: 0x01 | 0x02
  189.         prop JSName :: "emifSdextTras"
  190.         prop Visible :: 1
  191.         prop Writable :: if (CSL.EMIF_SUPPORT) && ((CSL.C11_SUPPORT)) {1} else {0}
  192.         prop NoGen :: 1
  193.         prop TabName :: "SDRAM More Opt."
  194.         prop Set :: (if ($1 < 1 || $1 > 8) {self.error("1 ECLKOUT cycle < tras < 8 ECLKOUT cycles ")} else {self.TRAS_SETUP = $1, self.SDEXT_VALUE = self.SDEXT_VALUE_update(), "ok"})
  195.     }
  196.     inst TRRD_SETUP :: 3 { 
  197.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  198.         prop Style :: 0x01 | 0x02
  199.         prop Label :: "trrd = TRRD (2 or 3 ECLKOUT cyc.)"
  200.         prop JSName :: "emifSdextTrrd"
  201.         prop Visible :: 1
  202.         prop Writable :: if (CSL.EMIF_SUPPORT) && ((CSL.C11_SUPPORT)) {1} else {0}
  203.         prop NoGen :: 1
  204.         prop TabName :: "SDRAM More Opt."
  205.         prop Set :: (if ($1 < 2 || $1 > 3) {self.error("TRRD : 2 or 3 ECLKOUT cycles ")} else {self.TRRD_SETUP = $1, self.SDEXT_VALUE = self.SDEXT_VALUE_update(), "ok"})
  206.     }
  207.     inst TWR_SETUP :: 2 { 
  208.         prop Label :: "twr  = TWR + 1 (ECLKOUT cyc.)"
  209.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  210.         prop Style :: 0x01 | 0x02
  211.         prop JSName :: "emifSdextTwr"
  212.         prop Visible :: 1
  213.         prop Writable :: if (CSL.EMIF_SUPPORT) && ((CSL.C11_SUPPORT)) {1} else {0}
  214.         prop NoGen :: 1
  215.         prop TabName :: "SDRAM More Opt."
  216.         prop Set :: (if ($1 < 1 || $1 > 4) {self.error("1 ECLKOUT cycle < twr < 4 ECLKOUT cycles ")} else {self.TWR_SETUP = $1, self.SDEXT_VALUE = self.SDEXT_VALUE_update(), "ok"})
  217.     }
  218.     inst THZP_SETUP :: 3 { 
  219.         prop Label :: "thzp = THZP + 1 (ECLKOUT cyc.)"
  220.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  221.         prop Style :: 0x01 | 0x02
  222.         prop JSName :: "emifSdextThzp"
  223.         prop Visible :: 1
  224.         prop Writable :: if (CSL.EMIF_SUPPORT) && ((CSL.C11_SUPPORT)) {1} else {0}
  225.         prop NoGen :: 1
  226.         prop TabName :: "SDRAM More Opt."
  227.         prop Set :: (if ($1 < 1 || $1 > 4) {self.error("1 ECLKOUT cycle < thzp < 4 ECLKOUT cycles ")} else {self.THZP_SETUP = $1, self.SDEXT_VALUE = self.SDEXT_VALUE_update(), "ok"})
  228.     }
  229.     inst RD2RD_SETUP :: 2 { 
  230.         prop Label :: "READ-To-READ (ECLKOUT cyc.)"
  231.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  232.         prop Style :: 0x01 | 0x02
  233.         prop JSName :: "emifSdextRd2rd"
  234.         prop Visible :: 1
  235.         prop Writable :: if (CSL.EMIF_SUPPORT) && ((CSL.C11_SUPPORT)) {1} else {0}
  236.         prop NoGen :: 1
  237.         prop TabName :: "SDRAM More Opt."
  238.         prop Set :: (if ($1 < 1 || $1 > 2) {self.error("1 < # of ECLKOUT cycles < 2  ")} else {self.RD2RD_SETUP = $1, self.SDEXT_VALUE = self.SDEXT_VALUE_update(), "ok"})
  239.     }
  240.     inst RD2DEAC_SETUP :: 4 { 
  241.         prop Label :: "READ-To-DEAC/DEAB (ECLKOUT cyc.)"
  242.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  243.         prop Style :: 0x01 | 0x02
  244.         prop JSName :: "emifSdextRd2deac"
  245.         prop Visible :: 1
  246.         prop Writable :: if (CSL.EMIF_SUPPORT) && ((CSL.C11_SUPPORT)) {1} else {0}
  247.         prop NoGen :: 1
  248.         prop TabName :: "SDRAM More Opt."
  249.         prop Set :: (if ($1 < 1 || $1 > 4) {self.error("1 < # of ECLKOUT cycles < 4  ")} else {self.RD2DEAC_SETUP = $1, self.SDEXT_VALUE = self.SDEXT_VALUE_update(), "ok"})
  250.     }
  251.     inst RD2WR_SETUP :: 6 { 
  252.         prop Label :: "READ-To-WRITE (ECLKOUT cyc.)"
  253.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  254.         prop Style :: 0x01 | 0x02
  255.         prop JSName :: "emifSdextRd2wr"
  256.         prop Visible :: 1
  257.         prop Writable :: if (CSL.EMIF_SUPPORT) && ((CSL.C11_SUPPORT)) {1} else {0}
  258.         prop NoGen :: 1
  259.         prop TabName :: "SDRAM More Opt."
  260.         prop Set :: (if ($1 < 1 || $1 > 8) {self.error("1 < # of ECLKOUT cycles < 8  ")} else {self.RD2WR_SETUP = $1, self.SDEXT_VALUE = self.SDEXT_VALUE_update(), "ok"})
  261.     }
  262.     inst R2WDQM_SETUP :: 4 { 
  263.         prop Label :: "READ-To-WRITE with Interrupt (BEx cyc.)"
  264.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  265.         prop Style :: 0x01 | 0x02
  266.         prop JSName :: "emifSdextR2wdqm"
  267.         prop Visible :: 1
  268.         prop Writable :: if (CSL.EMIF_SUPPORT) && ((CSL.C11_SUPPORT)) {1} else {0}
  269.         prop NoGen :: 1
  270.         prop TabName :: "SDRAM More Opt."
  271.         prop Set :: (if ($1 < 1 || $1 > 4) {self.error("1 < # of Bex cycles < 4  ")} else {self.R2WDQM_SETUP = $1, self.SDEXT_VALUE = self.SDEXT_VALUE_update(), "ok"})
  272.     }
  273.     inst WR2WR_SETUP :: 2 { 
  274.         prop Label :: "WRITE-To-WRITE (ECLKOUT cyc.)"
  275.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  276.         prop Style :: 0x01 | 0x02
  277.         prop JSName :: "emifSdextWr2wr"
  278.         prop Visible :: 1
  279.         prop Writable :: if (CSL.EMIF_SUPPORT) && ((CSL.C11_SUPPORT)) {1} else {0}
  280.         prop NoGen :: 1
  281.         prop TabName :: "SDRAM More Opt."
  282.         prop Set :: (if ($1 < 1 || $1 > 2) {self.error("1 < # of ECLKOUT cycles < 2  ")} else {self.WR2WR_SETUP = $1, self.SDEXT_VALUE = self.SDEXT_VALUE_update(), "ok"})
  283.     }
  284.     inst WR2DEAC_SETUP :: 2 { 
  285.         prop Label :: "WRITE-To-DEAC/DEAB (ECLKOUT cyc.)"
  286.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  287.         prop Style :: 0x01 | 0x02
  288.         prop JSName :: "emifSdextWr2deac"
  289.         prop Visible :: 1
  290.         prop Writable :: if (CSL.EMIF_SUPPORT) && ((CSL.C11_SUPPORT)) {1} else {0}
  291.         prop NoGen :: 1
  292.         prop TabName :: "SDRAM More Opt."
  293.         prop Set :: (if ($1 < 1 || $1 > 4) {self.error("1 < # of ECLKOUT cycles < 4  ")} else {self.WR2DEAC_SETUP = $1, self.SDEXT_VALUE = self.SDEXT_VALUE_update(), "ok"})
  294.     }
  295.     inst WR2RD_SETUP :: 2 { 
  296.         prop Label :: "WRITE-To-READ (# of ECLKOUT cyc.)"
  297.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  298.         prop Style :: 0x01 | 0x02
  299.         prop JSName :: "emifSdextWr2rd"
  300.         prop Visible :: 1
  301.         prop Writable :: if (CSL.EMIF_SUPPORT) && ((CSL.C11_SUPPORT)) {1} else {0}
  302.         prop NoGen :: 1
  303.         prop TabName :: "SDRAM More Opt."
  304.         prop Set :: (if ($1 < 1 || $1 > 2) {self.error("1 < # of ECLKOUT cycles < 2  ")} else {self.WR2RD_SETUP = $1, self.SDEXT_VALUE = self.SDEXT_VALUE_update(), "ok"})
  305.     }
  306.     inst GBLCTL_VALUE :: self.GBLCTL_VALUE_update() { 
  307.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  308.         prop Label :: "Global Control Reg. (GBLCTL) "
  309.         prop Format :: "0x%08X"
  310.         prop JSName :: "emifGblctl"
  311.         prop Visible :: 1
  312.         prop Writable :: (CSL.EMIF_SUPPORT) && 1
  313.         prop NoGen :: 0
  314.         prop cGen :: 1
  315.         prop cType :: "Uint32"
  316.         prop TabName :: "Advanced"
  317.         prop Set :: (if (CSL.C11_SUPPORT) {$a = $1 & 0xFFFFC000, if ($a != 0) {self.error("Bit field(bit[14..31]) is reserved")} else {$b = $1 & 0x00000007, if ($b != 0) {self.error("Bit field(bit[0..2]) is reserved")} else {self.GBLCTL_VALUE = $1 | 0x0003000 | 0x00000060, self.GBLCTL_SETUP_update($1 | 0x0003000 | 0x00000060), "ok"}}} else {if (CSL.CHIP_6202 || CSL.CHIP_6203 || CSL.CHIP_6204 || CSL.CHIP_6205) {$c = $1 & 0xFFFFC000, if ($c != 0) {self.error("Bit field(bit[14..31]) is reserved")} else {$d = $1 & 0x00000800, if ($d != 0) {self.error("Bit field 11 is reserved")} else {$e = $1 & 0x00000004, if ($e != 0) {self.error("Bit field 2 is reserved")} else {self.GBLCTL_VALUE = $1 | 0x0003000, self.GBLCTL_SETUP_update($1 | 0x0003000), "ok"}}}} else {if (CSL.CHIP_6201 || CSL.CHIP_6701) {$f = $1 & 0xFFFFC000, if ($f != 0) {self.error("Bit field(bit[14..31]) is reserved")} else {$g = $1 & 0x00000800, if ($g != 0) {self.error("Bit field 11 is reserved")} else {self.GBLCTL_VALUE = $1 | 0x0003000, self.GBLCTL_SETUP_update($1 | 0x0003000), "ok"}}} }})
  318.     }
  319.     inst CECTL0_VALUE :: self.CECTL0_VALUE_update() { 
  320.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  321.         prop Label :: "CE0 Space Control Reg. (CECTL0) "
  322.         prop Format :: "0x%08X"
  323.         prop JSName :: "emifCectl0"
  324.         prop Visible :: 1
  325.         prop Writable :: (CSL.EMIF_SUPPORT) && 1
  326.         prop NoGen :: 0
  327.         prop cGen :: 1
  328.         prop cType :: "Uint32"
  329.         prop TabName :: "Advanced"
  330.         prop Set :: ($a = $1 & 0x00000070, if ($a == 0x00000070 || $a == 0x00000050 || $a == 0x00000060) {self.error("Undefined Memory type for CE Spaces - See CEx Space Pages")} else {if (CSL.C11_SUPPORT) {$b = $1 & 0x000000F0, if ($b == 0x000000C0 || $b == 0x000000D0 || $b == 0x000000E0 || $b == 0x000000F0) {self.error("Undefined Memory type for CEx Spaces - See CEx Space Pages")} else {$g = $1 & 0x00000008, if ($g != 0) {self.error("Bit field 3 is reserved")} else {self.CECTL0_VALUE = $1, self.CECTL0_SETUP_update($1), "ok"}}} else {$c = $1 & 0x00000070, if ($c == 0x00000000 || $c == 0x00000010) {self.error("Undefined Memory type for CE0 Space - See CE0 Space Page")} else {$d = $1 & 0x0000C000, if ($d != 0) {self.error("Bit field(bit[14..15]) is reserved")} else {$e = $1 & 0x00000080, if ($e != 0) {self.error("Bit field 7 is reserved")} else {$f = $1 & 0x0000000C, if ($f != 0) {self.error("Bit field(bit[2..3]) is reserved")} else {self.CECTL0_VALUE = $1, self.CECTL0_SETUP_update($1), "ok"}}}}}})
  331.     }
  332.     inst CECTL1_VALUE :: self.CECTL1_VALUE_update() { 
  333.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  334.         prop Label :: "CE1 Space Control Reg. (CECTL1) "
  335.         prop Format :: "0x%08X"
  336.         prop JSName :: "emifCectl1"
  337.         prop Visible :: 1
  338.         prop Writable :: (CSL.EMIF_SUPPORT) && 1
  339.         prop NoGen :: 0
  340.         prop cGen :: 1
  341.         prop cType :: "Uint32"
  342.         prop TabName :: "Advanced"
  343.         prop Set :: ($a = $1 & 0x00000070, if ($a == 0x00000070 || $a == 0x00000050 || $a == 0x00000060) {self.error("Undefined Memory type for CE Spaces - See CEx Space Pages")} else {if (CSL.C11_SUPPORT) {$b = $1 & 0x000000F0, if ($b == 0x000000C0 || $b == 0x000000D0 || $b == 0x000000E0 || $b == 0x000000F0) {self.error("Undefined Memory type for CEx Spaces - See CEx Space Pages")} else {$g = $1 & 0x00000008, if ($g != 0) {self.error("Bit field 3 is reserved")} else {self.CECTL1_VALUE = $1, self.CECTL1_SETUP_update($1), "ok"}}} else {$c = $1 & 0x00000070, if ($c == 0x00000030) {self.error("Undefined Memory type for CE1 Space - See CE1 Space Page")} else {$d = $1 & 0x0000C000, if ($d != 0) {self.error("Bit field(bit[14..15]) is reserved")} else {$e = $1 & 0x00000080, if ($e != 0) {self.error("Bit field 7 is reserved")} else {$f = $1 & 0x0000000C, if ($f != 0) {self.error("Bit field(bit[2..3]) is reserved")} else {self.CECTL1_VALUE = $1, self.CECTL1_SETUP_update($1), "ok"}}}}}})
  344.     }
  345.     inst CECTL2_VALUE :: self.CECTL2_VALUE_update() { 
  346.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  347.         prop Label :: "CE2 Space Control Reg. (CECTL2) "
  348.         prop Format :: "0x%08X"
  349.         prop JSName :: "emifCectl2"
  350.         prop Visible :: 1
  351.         prop Writable :: (CSL.EMIF_SUPPORT) && 1
  352.         prop NoGen :: 0
  353.         prop cGen :: 1
  354.         prop cType :: "Uint32"
  355.         prop TabName :: "Advanced"
  356.         prop Set :: ($a = $1 & 0x00000070, if ($a == 0x00000070 || $a == 0x00000050 || $a == 0x00000060) {self.error("Undefined Memory type for CE Spaces - See CEx Space Pages")} else {if (CSL.C11_SUPPORT) {$b = $1 & 0x000000F0, if ($b == 0x000000C0 || $b == 0x000000D0 || $b == 0x000000E0 || $b == 0x000000F0) {self.error("Undefined Memory type for CEx Spaces - See CEx Space Pages")} else {$g = $1 & 0x00000008, if ($g != 0) {self.error("Bit field 3 is reserved")} else {self.CECTL2_VALUE = $1, self.CECTL2_SETUP_update($1), "ok"}}} else {$c = $1 & 0x00000070, if ($c == 0x00000000 || $c == 0x00000010) {self.error("Undefined Memory type for CE2 Space - See CE2 Space Page")} else {$d = $1 & 0x0000C000, if ($d != 0) {self.error("Bit field(bit[14..15]) is reserved")} else {$e = $1 & 0x00000080, if ($e != 0) {self.error("Bit field 7 is reserved")} else {$f = $1 & 0x0000000C, if ($f != 0) {self.error("Bit field(bit[2..3]) is reserved")} else {self.CECTL2_VALUE = $1, self.CECTL2_SETUP_update($1), "ok"}}}}}})
  357.     }
  358.     inst CECTL3_VALUE :: self.CECTL3_VALUE_update() { 
  359.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  360.         prop Label :: "CE3 Space Control Reg. (CECTL3) "
  361.         prop Format :: "0x%08X"
  362.         prop JSName :: "emifCectl3"
  363.         prop Visible :: 1
  364.         prop Writable :: (CSL.EMIF_SUPPORT) && 1
  365.         prop NoGen :: 0
  366.         prop cGen :: 1
  367.         prop cType :: "Uint32"
  368.         prop TabName :: "Advanced"
  369.         prop Set :: ($a = $1 & 0x00000070, if ($a == 0x00000070 || $a == 0x00000050 || $a == 0x00000060) {self.error("Undefined Memory type for CE Spaces - See CEx Space Pages")} else {if (CSL.C11_SUPPORT) {$b = $1 & 0x000000F0, if ($b == 0x000000C0 || $b == 0x000000D0 || $b == 0x000000E0 || $b == 0x000000F0) {self.error("Undefined Memory type for CEx Spaces - See CEx Space Pages")} else {$g = $1 & 0x00000008, if ($g != 0) {self.error("Bit field 3 is reserved")} else {self.CECTL3_VALUE = $1, self.CECTL3_SETUP_update($1), "ok"}}} else {$c = $1 & 0x00000070, if ($c == 0x00000000 || $c == 0x00000010) {self.error("Undefined Memory type for CE3 Space - See CE3 Space Page")} else {$d = $1 & 0x0000C000, if ($d != 0) {self.error("Bit field(bit[14..15]) is reserved")} else {$e = $1 & 0x00000080, if ($e != 0) {self.error("Bit field 7 is reserved")} else {$f = $1 & 0x0000000C, if ($f != 0) {self.error("Bit field(bit[2..3]) is reserved")} else {self.CECTL3_VALUE = $1, self.CECTL3_SETUP_update($1), "ok"}}}}}})
  370.     }
  371.     inst SDCTL_VALUE :: self.SDCTL_VALUE_update() { 
  372.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  373.         prop Label :: "SDRAM Control Reg.(SDCTL) "
  374.         prop Format :: "0x%08X"
  375.         prop JSName :: "emifSdctl"
  376.         prop Visible :: 1
  377.         prop Writable :: (CSL.EMIF_SUPPORT) && 1
  378.         prop NoGen :: 0
  379.         prop cGen :: 1
  380.         prop cType :: "Uint32"
  381.         prop TabName :: "Advanced"
  382.         prop Set :: ($a = $1 & 0x0c000000, if ($a == 0x0c000000) {self.error("Undefined Value for Colum Size field SDCSZ")} else {$b = $1 & 0x30000000, if ($b == 0x30000000) {self.error("Undefined Value for Row Size field SDRSZ")} else {self.SDCTL_VALUE = $1, self.SDCTL_SETUP_update($1), "ok"}})
  383.     }
  384.     inst SDTIM_VALUE :: self.SDTIM_VALUE_update() { 
  385.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  386.         prop Label :: "SDRAM Timing Reg.(SDTIM) "
  387.         prop Format :: "0x%08X"
  388.         prop JSName :: "emifSdtim"
  389.         prop Visible :: 1
  390.         prop Writable :: (CSL.EMIF_SUPPORT) && 1
  391.         prop NoGen :: 0
  392.         prop cGen :: 1
  393.         prop cType :: "Uint32"
  394.         prop TabName :: "Advanced"
  395.         prop Set :: (self.SDTIM_VALUE = $1, self.SDTIM_SETUP_update($1), "ok")
  396.     }
  397.     inst SDEXT_VALUE :: self.SDEXT_VALUE_update() { 
  398.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  399.         prop Label :: "SDRAM Extended Reg.(SDEXT) "
  400.         prop Format :: "0x%08X"
  401.         prop JSName :: "emifSdext"
  402.         prop Visible :: 1
  403.         prop Writable :: if (CSL.EMIF_SUPPORT) && (CSL.C11_SUPPORT) {1} else {0}
  404.         prop NoGen :: 0
  405.         prop cGen :: if (CSL.C11_SUPPORT) {1} else {0}
  406.         prop cType :: "Uint32"
  407.         prop TabName :: "Advanced"
  408.         prop Set :: (self.SDEXT_VALUE = $1, self.SDEXT_SETUP_update($1), "ok")
  409.     }
  410. }
  411. type hEmif {
  412.     prop IsContainedIn :: EMIFFOLDER
  413.     prop name :: "hEmif"
  414.     prop Label :: "EMIF Resource Manager"
  415.     prop JSName :: "HEMIF"
  416.     prop NoGen :: 1
  417.     prop GlobalPropertyPage :: "{980E6520-6246-11d4-B5CC-0050DA2E2CC0}"
  418.     prop InstancePropertyPage :: "{980E6521-6246-11d4-B5CC-0050DA2E2CC0}"
  419.     prop GlobalIcon :: 163
  420.     prop InstanceIcon :: 164
  421.     prop GlobalHelpTopic :: (1042)
  422.     prop cGen :: 1
  423.     global EMIF_INIT_ENABLE :: 0 { 
  424.         prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
  425.         prop Label :: "Enable Pre-Initialization"
  426.         prop JSName :: "emifEnablePreInit"
  427.         prop Visible :: 1
  428.         prop Writable :: (CSL.EMIF_SUPPORT) && 1
  429.         prop NoGen :: 0
  430.         prop Set :: ($a = 0, scan ($b; emifCfg) {$a = $a + 1}, if ($1 == 1 && $a == 1 && self.EMIF_INIT == EMIF_NOTHING) {" You must create a new configuration object"} else {self.EMIF_INIT_ENABLE = $1, if ($1 == 0) {self.EMIF_INIT = EMIF_NOTHING} , "ok"})
  431.     }
  432.     global EMIF_INIT :: EMIF_NOTHING { 
  433.         prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
  434.         prop MemberType :: emifCfg
  435.         prop Label :: " Pre-Initialize with"
  436.         prop JSName :: "emifPreInit"
  437.         prop Visible :: 1
  438.         prop Writable :: if (CSL.EMIF_SUPPORT) && (self.EMIF_INIT_ENABLE == 1) {1} else {0}
  439.     }
  440. }
  441. object EMIF_NOTHING :: emifCfg {
  442.     param iComment :: "<add comments here>"
  443.     param iIsUsed :: 0
  444.     param iId :: 0
  445.     param iDelUser :: "USER"
  446.     param iDelMsg :: "ok"
  447.     param NOHOLD_SETUP :: "Enable Hold"
  448.     param RBTR8_SETUP :: "until High-Priority"
  449.     param SSCRT_SETUP :: "1/2 CPU clock"
  450.     param CLK2EN_SETUP :: "Enabled to clock"
  451.     param CLK1EN_SETUP :: "Enabled to clock"
  452.     param SSCEN_SETUP :: "Enabled to clock"
  453.     param SDCEN_SETUP :: "Enabled to clock"
  454.     param RDSTRB0_SETUP :: 63
  455.     param RDSETUP0_SETUP :: 15
  456.     param RDHLD0_SETUP :: 3
  457.     param WRSTRB0_SETUP :: 63
  458.     param WRSETUP0_SETUP :: 15
  459.     param WRHLD0_SETUP :: 3
  460.     param TA0_SETUP :: 3
  461.     param RDSTRB1_SETUP :: 63
  462.     param RDSETUP1_SETUP :: 15
  463.     param RDHLD1_SETUP :: 3
  464.     param WRSTRB1_SETUP :: 63
  465.     param WRSETUP1_SETUP :: 15
  466.     param WRHLD1_SETUP :: 3
  467.     param TA1_SETUP :: 3
  468.     param RDSTRB2_SETUP :: 63
  469.     param RDSETUP2_SETUP :: 15
  470.     param RDHLD2_SETUP :: 3
  471.     param WRSTRB2_SETUP :: 63
  472.     param WRSETUP2_SETUP :: 15
  473.     param WRHLD2_SETUP :: 3
  474.     param TA2_SETUP :: 3
  475.     param RDSTRB3_SETUP :: 63
  476.     param RDSETUP3_SETUP :: 15
  477.     param RDHLD3_SETUP :: 3
  478.     param WRSTRB3_SETUP :: 63
  479.     param WRSETUP3_SETUP :: 15
  480.     param WRHLD3_SETUP :: 3
  481.     param TA3_SETUP :: 3
  482.     param TRC_SETUP :: 15
  483.     param TRP_SETUP :: 8
  484.     param TRCD_SETUP :: 8
  485.     param INIT_SETUP :: "Initialize"
  486.     param RFEN_SETUP :: "Enable"
  487.     param SDWID_SETUP :: "Four 8-bit SDRAMs"
  488.     param PERIOD_SETUP1 :: 64
  489.     param SDCSZ_SETUP :: " 9 addresses"
  490.     param SDRSZ_SETUP :: "11 addresses"
  491.     param SDBSZ_SETUP :: "Two banks"
  492.     param PERIOD_SETUP2 :: 1500
  493.     param XRFR_SETUP :: 1
  494.     param TCL_SETUP :: 3
  495.     param TRAS_SETUP :: 8
  496.     param TRRD_SETUP :: 3
  497.     param TWR_SETUP :: 2
  498.     param THZP_SETUP :: 3
  499.     param RD2RD_SETUP :: 2
  500.     param RD2DEAC_SETUP :: 4
  501.     param RD2WR_SETUP :: 6
  502.     param R2WDQM_SETUP :: 4
  503.     param WR2WR_SETUP :: 2
  504.     param WR2DEAC_SETUP :: 2
  505.     param WR2RD_SETUP :: 2
  506.     param GBLCTL_VALUE :: 12408
  507.     param CECTL0_VALUE :: -49373
  508.     param CECTL1_VALUE :: -49373
  509.     param CECTL2_VALUE :: -49373
  510.     param CECTL3_VALUE :: -49373
  511.     param SDCTL_VALUE :: 59305984
  512.     param SDTIM_VALUE :: 64
  513.     param SDEXT_VALUE :: 1564479
  514. }
  515. type EMIFAFOLDER {
  516.     isa ModuleFolder
  517.     prop IsContainedIn :: CSL
  518.     prop name :: "EMIFA"
  519.     prop Label :: "EMIFA - External Memory Interface A (64x devices only)"
  520.     prop NoGen :: 1
  521.     prop GlobalPropertyPage :: "{980E6530-6246-11d4-B5CC-0050DA2E2CC0}"
  522.     prop InstancePropertyPage :: "{980E6531-6246-11d4-B5CC-0050DA2E2CC0}"
  523.     prop GlobalIcon :: 163
  524.     prop InstanceIcon :: 164
  525.     prop GlobalHelpTopic :: (1043)
  526.     global gUser :: "USER" { 
  527.         prop Visible :: 0
  528.         prop Writable :: 0
  529.         prop NoGen :: 1
  530.     }
  531.     global gSetOf :: 0 { 
  532.         prop Visible :: 0
  533.         prop Writable :: 0
  534.         prop NoGen :: 1
  535.     }
  536.     global gNumOf :: 0 { 
  537.         prop Visible :: 0
  538.         prop Writable :: 0
  539.         prop NoGen :: 1
  540.     }
  541.     global gDirty :: 0 { 
  542.         prop Visible :: 0
  543.         prop Writable :: 0
  544.         prop NoGen :: 1
  545.     }
  546.     global gInitFlag :: 1 { 
  547.         prop Visible :: 0
  548.         prop Writable :: 0
  549.         prop NoGen :: 1
  550.     }
  551.     global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { 
  552.         prop Visible :: 0
  553.         prop Writable :: 0
  554.         prop NoGen :: 1
  555.     }
  556. }
  557. type emifaCfg {
  558.     isa ObjectMgr
  559.     prop Name :: "emifaCfg"
  560.     prop Label :: "EMIFA Configuration Manager"
  561.     prop JSName :: "EMIFA"
  562.     prop IsContainedIn :: EMIFAFOLDER
  563.     prop NoGen :: 1
  564.     prop maxObjs :: (32767)
  565.     prop GlobalPropertyPage :: "{980E6532-6246-11d4-B5CC-0050DA2E2CC0}"
  566.     prop InstancePropertyPage :: "{980E6533-6246-11d4-B5CC-0050DA2E2CC0}"
  567.     prop GlobalIcon :: 163
  568.     prop InstanceIcon :: 164
  569.     prop GlobalHelpTopic :: (1044)
  570.     prop InstanceHelpTopic :: (1044)
  571.     prop cGen :: CSL.EMIFA_SUPPORT
  572.     prop cStruct :: 1
  573.     prop cStructType :: "EMIFA_Config"
  574.     prop cHeaderName :: if self.gNumOf > 0 {"csl_emifa.h"} else {""}
  575.     prop cStructQual :: "far"
  576.     prop cStructName :: self
  577.     prop cConfigName :: "EMIFA_config"
  578.     prop localDelete :: (self.myDelete)
  579.     prop myDelete :: ($a = 0, scan ($b; emifaCfg) {$a = $a + 1}, if ($a == 2) {hEmifa.EMIFA_INIT_ENABLE = 0} , "ok")
  580.     prop NOHOLD_GBLCTL :: (if (self.NOHOLD_SETUP == "Disable Hold") {0x00000080} else {0x00000000})
  581.     prop CLK4EN_GBLCTL :: (if (self.CLK4EN_SETUP == "Held high") {0x00000000} else {0x00000010})
  582.     prop CLK6EN_GBLCTL :: (if (self.CLK6EN_SETUP == "Held high") {0x00000000} else {0x00000008})
  583.     prop EK1EN_GBLCTL :: (if (self.EK1EN_SETUP == "Held low") {0x00000000} else {0x00000020})
  584.     prop EK2EN_GBLCTL :: (if (self.EK2EN_SETUP == "Held low") {0x00000000} else {0x00010000})
  585.     prop EK1HZ_GBLCTL :: (if (self.EK1HZ_SETUP == "Clock during hold") {0x00000000} else {0x00000040})
  586.     prop EK2HZ_GBLCTL :: (if (self.EK2HZ_SETUP == "Clock during hold") {0x00000000} else {0x00020000})
  587.     prop EK2RATE_GBLCTL :: (if (self.EK2RATE_SETUP == "1x EMIF input clock") {0x00000000} else {if (self.EK2RATE_SETUP == "1/2x EMIF input clock") {0x00040000} else {if (self.EK2RATE_SETUP == "1/4x EMIF input clock") {0x00080000} }})
  588.     prop BRMODE_GBLCTL :: (if (self.BRMODE_SETUP == "access pending or in progress") {0x00000000} else {if (self.BRMODE_SETUP == "access/refresh pending or in progress") {0x00002000} })
  589.     prop MTYPE0_CECTL0 :: (if (self.MTYPE0_SETUP == "32-bit async. interf.") {0x00000020} else {if (self.MTYPE0_SETUP == "32-bit SDRAM") {0x00000030} else {if (self.MTYPE0_SETUP == "32-bit prog. sync. mem") {0x00000040} else {if (self.MTYPE0_SETUP == "  8-bit async. interf.") {0x00000000} else {if (self.MTYPE0_SETUP == "  8-bit SDRAM") {0x00000080} else {if (self.MTYPE0_SETUP == "  8-bit prog. sync. mem") {0x000000a0} else {if (self.MTYPE0_SETUP == "16-bit async. interf.") {0x00000010} else {if (self.MTYPE0_SETUP == "16-bit SDRAM") {0x00000090} else {if (self.MTYPE0_SETUP == "16-bit prog. sync. mem") {0x000000b0} else {if (self.MTYPE0_SETUP == "64-bit async. interf.") {0x000000c0} else {if (self.MTYPE0_SETUP == "64-bit SDRAM") {0x000000d0} else {if (self.MTYPE0_SETUP == "64-bit prog. sync. mem") {0x000000e0} }}}}}}}}}}})
  590.     prop RDSTRB0_CECTL0 :: (((self.RDSTRB0_SETUP) << 8))
  591.     prop RDSETUP0_CECTL0 :: (((self.RDSETUP0_SETUP) << 16))
  592.     prop RDHLD0_CECTL0 :: ((self.RDHLD0_SETUP))
  593.     prop WRSTRB0_CECTL0 :: (((self.WRSTRB0_SETUP) << 22))
  594.     prop WRSETUP0_CECTL0 :: (((self.WRSETUP0_SETUP) << 28))
  595.     prop WRHLD0_CECTL0 :: (if (self.WRHLD0_SETUP > 3) {((self.WRHLD0_SETUP - 4) << 20)} else {((self.WRHLD0_SETUP << 20))})
  596.     prop WRHLDMSB0_CECTL0 :: (if (self.WRHLD0_SETUP > 3) {0x00000008} else {0x00000000})
  597.     prop TA0_CECTL0 :: ((self.TA0_SETUP << 14))
  598.     prop MTYPE1_CECTL1 :: (if (self.MTYPE1_SETUP == "32-bit async. interf.") {0x00000020} else {if (self.MTYPE1_SETUP == "32-bit SDRAM") {0x00000030} else {if (self.MTYPE1_SETUP == "32-bit prog. sync. mem") {0x00000040} else {if (self.MTYPE1_SETUP == "  8-bit async. interf.") {0x00000000} else {if (self.MTYPE1_SETUP == "  8-bit SDRAM") {0x00000080} else {if (self.MTYPE1_SETUP == "  8-bit prog. sync. mem") {0x000000a0} else {if (self.MTYPE1_SETUP == "16-bit async. interf.") {0x00000010} else {if (self.MTYPE1_SETUP == "16-bit SDRAM") {0x00000090} else {if (self.MTYPE1_SETUP == "16-bit prog. sync. mem") {0x000000b0} else {if (self.MTYPE1_SETUP == "64-bit async. interf.") {0x000000c0} else {if (self.MTYPE1_SETUP == "64-bit SDRAM") {0x000000d0} else {if (self.MTYPE1_SETUP == "64-bit prog. sync. mem") {0x000000e0} }}}}}}}}}}})
  599.     prop RDSTRB1_CECTL1 :: (((self.RDSTRB1_SETUP) << 8))
  600.     prop RDSETUP1_CECTL1 :: (((self.RDSETUP1_SETUP) << 16))
  601.     prop RDHLD1_CECTL1 :: ((self.RDHLD1_SETUP))
  602.     prop WRSTRB1_CECTL1 :: (((self.WRSTRB1_SETUP) << 22))
  603.     prop WRSETUP1_CECTL1 :: (((self.WRSETUP1_SETUP) << 28))
  604.     prop WRHLD1_CECTL1 :: (if (self.WRHLD1_SETUP > 3) {((self.WRHLD1_SETUP - 4) << 20)} else {((self.WRHLD1_SETUP << 20))})
  605.     prop WRHLDMSB1_CECTL1 :: (if (self.WRHLD1_SETUP > 3) {0x00000008} else {0x00000000})
  606.     prop TA1_CECTL1 :: ((self.TA1_SETUP << 14))
  607.     prop MTYPE2_CECTL2 :: (if (self.MTYPE2_SETUP == "32-bit async. interf.") {0x00000020} else {if (self.MTYPE2_SETUP == "32-bit SDRAM") {0x00000030} else {if (self.MTYPE2_SETUP == "32-bit prog. sync. mem") {0x00000040} else {if (self.MTYPE2_SETUP == "  8-bit async. interf.") {0x00000000} else {if (self.MTYPE2_SETUP == "  8-bit SDRAM") {0x00000080} else {if (self.MTYPE2_SETUP == "  8-bit prog. sync. mem") {0x000000a0} else {if (self.MTYPE2_SETUP == "16-bit async. interf.") {0x00000010} else {if (self.MTYPE2_SETUP == "16-bit SDRAM") {0x00000090} else {if (self.MTYPE2_SETUP == "16-bit prog. sync. mem") {0x000000b0} else {if (self.MTYPE2_SETUP == "64-bit async. interf.") {0x000000c0} else {if (self.MTYPE2_SETUP == "64-bit SDRAM") {0x000000d0} else {if (self.MTYPE2_SETUP == "64-bit prog. sync. mem") {0x000000e0} }}}}}}}}}}})
  608.     prop RDSTRB2_CECTL2 :: (((self.RDSTRB2_SETUP) << 8))
  609.     prop RDSETUP2_CECTL2 :: (((self.RDSETUP2_SETUP) << 16))
  610.     prop RDHLD2_CECTL2 :: ((self.RDHLD2_SETUP))
  611.     prop WRSTRB2_CECTL2 :: (((self.WRSTRB2_SETUP) << 22))
  612.     prop WRSETUP2_CECTL2 :: (((self.WRSETUP2_SETUP) << 28))
  613.     prop WRHLD2_CECTL2 :: (if (self.WRHLD2_SETUP > 3) {((self.WRHLD2_SETUP - 4) << 20)} else {((self.WRHLD2_SETUP << 20))})
  614.     prop WRHLDMSB2_CECTL2 :: (if (self.WRHLD2_SETUP > 3) {0x00000008} else {0x00000000})
  615.     prop TA2_CECTL2 :: ((self.TA2_SETUP << 14))
  616.     prop MTYPE3_CECTL3 :: (if (self.MTYPE3_SETUP == "32-bit async. interf.") {0x00000020} else {if (self.MTYPE3_SETUP == "32-bit SDRAM") {0x00000030} else {if (self.MTYPE3_SETUP == "32-bit prog. sync. mem") {0x00000040} else {if (self.MTYPE3_SETUP == "  8-bit async. interf.") {0x00000000} else {if (self.MTYPE3_SETUP == "  8-bit SDRAM") {0x00000080} else {if (self.MTYPE3_SETUP == "  8-bit prog. sync. mem") {0x000000a0} else {if (self.MTYPE3_SETUP == "16-bit async. interf.") {0x00000010} else {if (self.MTYPE3_SETUP == "16-bit SDRAM") {0x00000090} else {if (self.MTYPE3_SETUP == "16-bit prog. sync. mem") {0x000000b0} else {if (self.MTYPE3_SETUP == "64-bit async. interf.") {0x000000c0} else {if (self.MTYPE3_SETUP == "64-bit SDRAM") {0x000000d0} else {if (self.MTYPE3_SETUP == "64-bit prog. sync. mem") {0x000000e0} }}}}}}}}}}})
  617.     prop RDSTRB3_CECTL3 :: (((self.RDSTRB3_SETUP) << 8))
  618.     prop RDSETUP3_CECTL3 :: (((self.RDSETUP3_SETUP) << 16))
  619.     prop RDHLD3_CECTL3 :: ((self.RDHLD3_SETUP))
  620.     prop WRSTRB3_CECTL3 :: (((self.WRSTRB3_SETUP) << 22))
  621.     prop WRSETUP3_CECTL3 :: (((self.WRSETUP3_SETUP) << 28))
  622.     prop WRHLD3_CECTL3 :: (if (self.WRHLD3_SETUP > 3) {((self.WRHLD3_SETUP - 4) << 20)} else {((self.WRHLD3_SETUP << 20))})
  623.     prop WRHLDMSB3_CECTL3 :: (if (self.WRHLD3_SETUP > 3) {0x00000008} else {0x00000000})
  624.     prop TA3_CECTL3 :: ((self.TA3_SETUP << 14))
  625.     prop SYNCRL0_CESEC0 :: (if (self.SYNCRL0_SETUP == "0 cycle") {0x00000000} else {if (self.SYNCRL0_SETUP == "1 cycle") {0x00000001} else {if (self.SYNCRL0_SETUP == "2 cycles") {0x00000002} else {0x00000003}}})
  626.     prop SYNCWL0_CESEC0 :: (if (self.SYNCWL0_SETUP == "0 cycle") {0x00000000} else {if (self.SYNCWL0_SETUP == "1 cycle") {0x00000004} else {if (self.SYNCWL0_SETUP == "2 cycles") {0x00000008} else {0x0000000c}}})
  627.     prop CEEXT0_CESEC0 :: (if (self.CEEXT0_SETUP == "Inactive") {0x00000000} else {0x0000010})
  628.     prop RENEN0_CESEC0 :: (if (self.RENEN0_SETUP == "ADS Mode") {0x00000000} else {0x0000020})
  629.     prop SNCCLK0_CESEC0 :: (if (self.SNCCLK0_SETUP == "Sync. to ECLKOUT1") {0x00000000} else {0x0000040})
  630.     prop SYNCRL1_CESEC1 :: (if (self.SYNCRL1_SETUP == "0 cycle") {0x00000000} else {if (self.SYNCRL1_SETUP == "1 cycle") {0x00000001} else {if (self.SYNCRL1_SETUP == "2 cycles") {0x00000002} else {0x00000003}}})
  631.     prop SYNCWL1_CESEC1 :: (if (self.SYNCWL1_SETUP == "0 cycle") {0x00000000} else {if (self.SYNCWL1_SETUP == "1 cycle") {0x00000004} else {if (self.SYNCWL1_SETUP == "2 cycles") {0x00000008} else {0x0000000c}}})
  632.     prop CEEXT1_CESEC1 :: (if (self.CEEXT1_SETUP == "Inactive") {0x00000000} else {0x0000010})
  633.     prop RENEN1_CESEC1 :: (if (self.RENEN1_SETUP == "ADS Mode") {0x00000000} else {0x0000020})
  634.     prop SNCCLK1_CESEC1 :: (if (self.SNCCLK1_SETUP == "Sync. to ECLKOUT1") {0x00000000} else {0x0000040})
  635.     prop SYNCRL2_CESEC2 :: (if (self.SYNCRL2_SETUP == "0 cycle") {0x00000000} else {if (self.SYNCRL2_SETUP == "1 cycle") {0x00000001} else {if (self.SYNCRL2_SETUP == "2 cycles") {0x00000002} else {0x00000003}}})
  636.     prop SYNCWL2_CESEC2 :: (if (self.SYNCWL2_SETUP == "0 cycle") {0x00000000} else {if (self.SYNCWL2_SETUP == "1 cycle") {0x00000004} else {if (self.SYNCWL2_SETUP == "2 cycles") {0x00000008} else {0x0000000c}}})
  637.     prop CEEXT2_CESEC2 :: (if (self.CEEXT2_SETUP == "Inactive") {0x00000000} else {0x0000010})
  638.     prop RENEN2_CESEC2 :: (if (self.RENEN2_SETUP == "ADS Mode") {0x00000000} else {0x0000020})
  639.     prop SNCCLK2_CESEC2 :: (if (self.SNCCLK2_SETUP == "Sync. to ECLKOUT1") {0x00000000} else {0x0000040})
  640.     prop SYNCRL3_CESEC3 :: (if (self.SYNCRL3_SETUP == "0 cycle") {0x00000000} else {if (self.SYNCRL3_SETUP == "1 cycle") {0x00000001} else {if (self.SYNCRL3_SETUP == "2 cycles") {0x00000002} else {0x00000003}}})
  641.     prop SYNCWL3_CESEC3 :: (if (self.SYNCWL3_SETUP == "0 cycle") {0x00000000} else {if (self.SYNCWL3_SETUP == "1 cycle") {0x00000004} else {if (self.SYNCWL3_SETUP == "2 cycles") {0x00000008} else {0x0000000c}}})
  642.     prop CEEXT3_CESEC3 :: (if (self.CEEXT3_SETUP == "Inactive") {0x00000000} else {0x0000010})
  643.     prop RENEN3_CESEC3 :: (if (self.RENEN3_SETUP == "ADS Mode") {0x00000000} else {0x0000020})
  644.     prop SNCCLK3_CESEC3 :: (if (self.SNCCLK3_SETUP == "Sync. to ECLKOUT1") {0x00000000} else {0x0000040})
  645.     prop TRC_SDCTL :: ((self.TRC_SETUP << 12))
  646.     prop TRP_SDCTL :: ((self.TRP_SETUP << 16))
  647.     prop TRCD_SDCTL :: ((self.TRCD_SETUP << 20))
  648.     prop INIT_SDCTL :: (if (self.INIT_SETUP == "Initialize") {0x01000000} else {0x00000000})
  649.     prop RFEN_SDCTL :: (if (self.RFEN_SETUP == "Enable") {0x02000000} else {0x00000000})
  650.     prop SDCSZ_SDCTL :: (if (self.SDCSZ_SETUP == " 8 addresses") {0x04000000} else {if (self.SDCSZ_SETUP == "10 addresses") {0x08000000} else {0x00000000}})
  651.     prop SDRSZ_SDCTL :: (if (self.SDRSZ_SETUP == "12 addresses") {0x10000000} else {if (self.SDRSZ_SETUP == "13 addresses") {0x20000000} else {0x00000000}})
  652.     prop SDBSZ_SDCTL :: (if (self.SDBSZ_SETUP == "Four banks") {0x40000000} else {0x00000000})
  653.     prop SLFRFR_SDCTL :: (if (self.SLFRFR_SETUP == "Enable") {0x00000001} else {0x00000000})
  654.     prop PERIOD_SDTIM2 :: ((self.PERIOD_SETUP2))
  655.     prop XRFR_SDTIM :: (((self.XRFR_SETUP - 1) << 24))
  656.     prop TCL_SDEXT :: ((self.TCL_SETUP - 2))
  657.     prop TRAS_SDEXT :: (((self.TRAS_SETUP - 1) << 1))
  658.     prop TRRD_SDEXT :: ((self.TRRD_SETUP - 2) << 4)
  659.     prop TWR_SDEXT :: (((self.TWR_SETUP - 1) << 5))
  660.     prop THZP_SDEXT :: (((self.THZP_SETUP - 1) << 7))
  661.     prop RD2RD_SDEXT :: (((self.RD2RD_SETUP - 1) << 9))
  662.     prop RD2DEAC_SDEXT :: (((self.RD2DEAC_SETUP - 1) << 10))
  663.     prop RD2WR_SDEXT :: (((self.RD2WR_SETUP - 1) << 12))
  664.     prop R2WDQM_SDEXT :: (((self.R2WDQM_SETUP - 1) << 15))
  665.     prop WR2WR_SDEXT :: (((self.WR2WR_SETUP - 1) << 17))
  666.     prop WR2DEAC_SDEXT :: (((self.WR2DEAC_SETUP - 1) << 18))
  667.     prop WR2RD_SDEXT :: (((self.WR2RD_SETUP - 1) << 20))
  668.     prop GBLCTL_VALUE_update :: (0x00000004 | self.NOHOLD_GBLCTL() | self.CLK4EN_GBLCTL() | self.CLK6EN_GBLCTL() | self.EK1EN_GBLCTL() | self.EK2EN_GBLCTL() | self.EK1HZ_GBLCTL() | self.EK2HZ_GBLCTL() | self.EK2RATE_GBLCTL() | self.BRMODE_GBLCTL())
  669.     prop GBLCTL_SETUP_update :: (self.NOHOLD_SETUP = if ($1 & 0x00000080) {"Disable Hold"} else {"Enable Hold"}, self.CLK4EN_SETUP = if ($1 & 0x00000010) {"Enabled to clock"} else {"Held high"}, self.CLK6EN_SETUP = if ($1 & 0x00000008) {"Enabled to clock"} else {"Held high"}, self.EK1EN_SETUP = if ($1 & 0x00000020) {"Enabled to clock"} else {"Held low"}, self.EK2EN_SETUP = if ($1 & 0x00010000) {"Enabled to clock"} else {"Held low"}, self.EK1HZ_SETUP = if ($1 & 0x00000040) {"High-Z during hold"} else {"Clock during hold"}, self.EK2HZ_SETUP = if ($1 & 0x00020000) {"High-Z during hold"} else {"Clock during hold"}, self.BRMODE_SETUP = if ($1 & 0x00002000) {"access/refresh pending or in progress"} else {"access pending or in progress"}, $a = $1 & 0x000C0000, if ($a == 0x00080000) {self.EK2RATE_SETUP = "1/4x EMIF input clock"} else {self.EK2RATE_SETUP = if ($1 & 0x00040000) {"1/2x EMIF input clock"} else {"1x EMIF input clock"}})
  670.     prop CECTL0_VALUE_update :: (self.MTYPE0_CECTL0() | self.RDHLD0_CECTL0() | self.RDSTRB0_CECTL0() | self.RDSETUP0_CECTL0() | self.WRHLD0_CECTL0() | self.WRHLDMSB0_CECTL0() | self.WRSETUP0_CECTL0() | self.WRSTRB0_CECTL0() | self.TA0_CECTL0())
  671.     prop CECTL0_SETUP_update :: (self.MTYPE0_SETUP = ($a = ($1 & 0x000000f0), if ($a == 0x00000000) {"  8-bit async. interf."} else {if ($a == 0x00000010) {"16-bit async. interf."} else {if ($a == 0x00000020) {"32-bit async. interf."} else {if ($a == 0x00000030) {"32-bit SDRAM"} else {if ($a == 0x00000040) {"32-bit prog. sync. mem"} else {if ($a == 0x00000080) {"  8-bit SDRAM"} else {if ($a == 0x00000090) {"16-bit SDRAM"} else {if ($a == 0x000000a0) {"  8-bit prog. sync. mem"} else {if ($a == 0x000000b0) {"16-bit prog. sync. mem"} else {if ($a == 0x000000c0) {"64-bit async. interf."} else {if ($a == 0x000000d0) {"64-bit SDRAM"} else {"64-bit prog. sync. mem"}}}}}}}}}}}), self.RDHLD0_SETUP = ($1 & 0x00000007), self.RDSTRB0_SETUP = (($1 & 0x00003F00) >> 8), self.RDSETUP0_SETUP = (($1 & 0x000F0000) >> 16), self.WRHLD0_SETUP = ((($1 & 0x00300000) >> 20) + (($1 & 0x00000008) >> 1)), self.WRSTRB0_SETUP = (($1 & 0x0FC00000) >> 22), self.WRSETUP0_SETUP = (($1 >> 28) & 0xF), self.TA0_SETUP = ($1 & 0x0000c000) >> 14)
  672.     prop CECTL1_VALUE_update :: (self.MTYPE1_CECTL1() | self.RDHLD1_CECTL1() | self.RDSTRB1_CECTL1() | self.RDSETUP1_CECTL1() | self.WRHLD1_CECTL1() | self.WRHLDMSB1_CECTL1() | self.WRSETUP1_CECTL1() | self.WRSTRB1_CECTL1() | self.TA1_CECTL1())
  673.     prop CECTL1_SETUP_update :: (self.MTYPE1_SETUP = ($a = ($1 & 0x000000f0), if ($a == 0x00000000) {"  8-bit async. interf."} else {if ($a == 0x00000010) {"16-bit async. interf."} else {if ($a == 0x00000020) {"32-bit async. interf."} else {if ($a == 0x00000030) {"32-bit SDRAM"} else {if ($a == 0x00000040) {"32-bit prog. sync. mem"} else {if ($a == 0x00000080) {"  8-bit SDRAM"} else {if ($a == 0x00000090) {"16-bit SDRAM"} else {if ($a == 0x000000a0) {"  8-bit prog. sync. mem"} else {if ($a == 0x000000b0) {"16-bit prog. sync. mem"} else {if ($a == 0x000000c0) {"64-bit async. interf."} else {if ($a == 0x000000d0) {"64-bit SDRAM"} else {"64-bit prog. sync. mem"}}}}}}}}}}}), self.RDHLD1_SETUP = ($1 & 0x00000007), self.RDSTRB1_SETUP = (($1 & 0x00003F00) >> 8), self.RDSETUP1_SETUP = (($1 & 0x000F0000) >> 16), self.WRHLD1_SETUP = ((($1 & 0x00300000) >> 20) + (($1 & 0x00000008) >> 1)), self.WRSTRB1_SETUP = (($1 & 0x0FC00000) >> 22), self.WRSETUP1_SETUP = (($1 >> 28) & 0xF), self.TA1_SETUP = ($1 & 0x0000c000) >> 14)
  674.     prop CECTL2_VALUE_update :: (self.MTYPE2_CECTL2() | self.RDHLD2_CECTL2() | self.RDSTRB2_CECTL2() | self.RDSETUP2_CECTL2() | self.WRHLD2_CECTL2() | self.WRHLDMSB2_CECTL2() | self.WRSETUP2_CECTL2() | self.WRSTRB2_CECTL2() | self.TA2_CECTL2())
  675.     prop CECTL2_SETUP_update :: (self.MTYPE2_SETUP = ($a = ($1 & 0x000000f0), if ($a == 0x00000000) {"  8-bit async. interf."} else {if ($a == 0x00000010) {"16-bit async. interf."} else {if ($a == 0x00000020) {"32-bit async. interf."} else {if ($a == 0x00000030) {"32-bit SDRAM"} else {if ($a == 0x00000040) {"32-bit prog. sync. mem"} else {if ($a == 0x00000080) {"  8-bit SDRAM"} else {if ($a == 0x00000090) {"16-bit SDRAM"} else {if ($a == 0x000000a0) {"  8-bit prog. sync. mem"} else {if ($a == 0x000000b0) {"16-bit prog. sync. mem"} else {if ($a == 0x000000c0) {"64-bit async. interf."} else {if ($a == 0x000000d0) {"64-bit SDRAM"} else {"64-bit prog. sync. mem"}}}}}}}}}}}), self.RDHLD2_SETUP = ($1 & 0x00000007), self.RDSTRB2_SETUP = (($1 & 0x00003F00) >> 8), self.RDSETUP2_SETUP = (($1 & 0x000F0000) >> 16), self.WRHLD2_SETUP = ((($1 & 0x00300000) >> 20) + (($1 & 0x00000008) >> 1)), self.WRSTRB2_SETUP = (($1 & 0x0FC00000) >> 22), self.WRSETUP2_SETUP = (($1 >> 28) & 0xF), self.TA2_SETUP = ($1 & 0x0000c000) >> 14)
  676.     prop CECTL3_VALUE_update :: (self.MTYPE3_CECTL3() | self.RDHLD3_CECTL3() | self.RDSTRB3_CECTL3() | self.RDSETUP3_CECTL3() | self.WRHLD3_CECTL3() | self.WRHLDMSB3_CECTL3() | self.WRSETUP3_CECTL3() | self.WRSTRB3_CECTL3() | self.TA3_CECTL3())
  677.     prop CECTL3_SETUP_update :: (self.MTYPE3_SETUP = ($a = ($1 & 0x000000f0), if ($a == 0x00000000) {"  8-bit async. interf."} else {if ($a == 0x00000010) {"16-bit async. interf."} else {if ($a == 0x00000020) {"32-bit async. interf."} else {if ($a == 0x00000030) {"32-bit SDRAM"} else {if ($a == 0x00000040) {"32-bit prog. sync. mem"} else {if ($a == 0x00000080) {"  8-bit SDRAM"} else {if ($a == 0x00000090) {"16-bit SDRAM"} else {if ($a == 0x000000a0) {"  8-bit prog. sync. mem"} else {if ($a == 0x000000b0) {"16-bit prog. sync. mem"} else {if ($a == 0x000000c0) {"64-bit async. interf."} else {if ($a == 0x000000d0) {"64-bit SDRAM"} else {"64-bit prog. sync. mem"}}}}}}}}}}}), self.RDHLD3_SETUP = ($1 & 0x00000007), self.RDSTRB3_SETUP = (($1 & 0x00003F00) >> 8), self.RDSETUP3_SETUP = (($1 & 0x000F0000) >> 16), self.WRHLD3_SETUP = ((($1 & 0x00300000) >> 20) + (($1 & 0x00000008) >> 1)), self.WRSTRB3_SETUP = (($1 & 0x0FC00000) >> 22), self.WRSETUP3_SETUP = (($1 >> 28) & 0xF), self.TA3_SETUP = ($1 & 0x0000c000) >> 14)
  678.     prop SDCTL_VALUE_update :: (self.TRC_SDCTL() | self.TRP_SDCTL() | self.SLFRFR_SDCTL() | self.TRCD_SDCTL() | self.INIT_SDCTL() | self.RFEN_SDCTL() | self.SDCSZ_SDCTL() | self.SDRSZ_SDCTL() | self.SDBSZ_SDCTL())
  679.     prop SDCTL_SETUP_update :: (self.TRC_SETUP = ($1 & 0x0000F000) >> 12, self.TRP_SETUP = ($1 & 0x000F0000) >> 16, self.TRCD_SETUP = ($1 & 0x00F00000) >> 20, self.INIT_SETUP = ($a = ($1 & 0x01000000), if ($a == 0x01000000) {"Initialize"} else {"No effect"}), self.RFEN_SETUP = ($a = ($1 & 0x02000000), if ($a == 0x02000000) {"Enable"} else {"Disable"}), self.SDCSZ_SETUP = ($a = ($1 & 0x0c000000), if ($a == 0x04000000) {" 8 addresses"} else {if ($a == 0x08000000) {"10 addresses"} else {" 9 addresses"}}), self.SDRSZ_SETUP = ($a = ($1 & 0x30000000), if ($a == 0x10000000) {"12 addresses"} else {if ($a == 0x20000000) {"13 addresses"} else {"11 addresses"}}), self.SDBSZ_SETUP = ($a = ($1 & 0x40000000), if ($a == 0x40000000) {"Four banks"} else {"Two banks"}), self.SLFRFR_SETUP = ($a = ($1 & 0x00000001), if ($a == 0x00000001) {"Enable"} else {"Disable"}))
  680.     prop SDTIM_VALUE_update :: (self.PERIOD_SDTIM2() | self.XRFR_SDTIM() | 0x005dc000)
  681.     prop SDTIM_SETUP_update :: (self.PERIOD_SETUP2 = ($1 & 0x00000FFF), self.XRFR_SETUP = (($1 & 0x03000000) >> 24) + 1)
  682.     prop SDEXT_VALUE_update :: (self.TCL_SDEXT() | self.TRAS_SDEXT() | self.TRRD_SDEXT() | self.TWR_SDEXT() | self.THZP_SDEXT() | self.RD2RD_SDEXT() | self.RD2DEAC_SDEXT() | self.RD2WR_SDEXT() | self.R2WDQM_SDEXT() | self.WR2WR_SDEXT() | self.WR2DEAC_SDEXT() | self.WR2RD_SDEXT())
  683.     prop SDEXT_SETUP_update :: (self.TCL_SETUP = ($1 & 0x00000001) + 2, self.TRAS_SETUP = (($1 & 0x0000000E) >> 1) + 1, self.TRRD_SETUP = (($1 & 0x00000010) >> 4) + 2, self.TWR_SETUP = (($1 & 0x00000060) >> 5) + 1, self.THZP_SETUP = (($1 & 0x00000180) >> 7) + 1, self.RD2RD_SETUP = (($1 & 0x00000200) >> 9) + 1, self.RD2DEAC_SETUP = (($1 & 0x00000c00) >> 10) + 1, self.RD2WR_SETUP = (($1 & 0x00007000) >> 12) + 1, self.R2WDQM_SETUP = (($1 & 0x00018000) >> 15) + 1, self.WR2WR_SETUP = (($1 & 0x00020000) >> 17) + 1, self.WR2DEAC_SETUP = (($1 & 0x000c0000) >> 18) + 1, self.WR2RD_SETUP = (($1 & 0x00100000) >> 20) + 1)
  684.     prop CESEC0_VALUE_update :: (self.SYNCRL0_CESEC0() | self.SYNCWL0_CESEC0() | self.CEEXT0_CESEC0() | self.RENEN0_CESEC0() | self.SNCCLK0_CESEC0())
  685.     prop CESEC0_SETUP_update :: (self.SYNCRL0_SETUP = ($a = ($1 & 0x00000003), if ($a == 0x00000000) {"0 cycle"} else {if ($a == 0x00000001) {"1 cycle"} else {if ($a == 0x00000002) {"2 cycles"} else {"3 cycles"}}}), self.SYNCWL0_SETUP = ($a = ($1 & 0x0000000C), if ($a == 0x00000000) {"0 cycle"} else {if ($a == 0x00000004) {"1 cycle"} else {if ($a == 0x00000008) {"2 cycles"} else {"3 cycles"}}}), self.CEEXT0_SETUP = ($a = ($1 & 0x00000010), if ($a == 0x00000000) {"Inactive"} else {"Active"}), self.RENEN0_SETUP = ($a = ($1 & 0x00000020), if ($a == 0x00000000) {"ADS Mode"} else {"Read Enable Mode"}), self.SNCCLK0_SETUP = ($a = ($1 & 0x00000040), if ($a == 0x00000000) {"Sync. to ECLKOUT1"} else {"Sync. to ECLKOUT2"}))
  686.     prop CESEC1_VALUE_update :: (self.SYNCRL1_CESEC1() | self.SYNCWL1_CESEC1() | self.CEEXT1_CESEC1() | self.RENEN1_CESEC1() | self.SNCCLK1_CESEC1())
  687.     prop CESEC1_SETUP_update :: (self.SYNCRL1_SETUP = ($a = ($1 & 0x00000003), if ($a == 0x00000000) {"0 cycle"} else {if ($a == 0x00000001) {"1 cycle"} else {if ($a == 0x00000002) {"2 cycles"} else {"3 cycles"}}}), self.SYNCWL1_SETUP = ($a = ($1 & 0x0000000C), if ($a == 0x00000000) {"0 cycle"} else {if ($a == 0x00000004) {"1 cycle"} else {if ($a == 0x00000008) {"2 cycles"} else {"3 cycles"}}}), self.CEEXT1_SETUP = ($a = ($1 & 0x00000010), if ($a == 0x00000000) {"Inactive"} else {"Active"}), self.RENEN1_SETUP = ($a = ($1 & 0x00000020), if ($a == 0x00000000) {"ADS Mode"} else {"Read Enable Mode"}), self.SNCCLK1_SETUP = ($a = ($1 & 0x00000040), if ($a == 0x00000000) {"Sync. to ECLKOUT1"} else {"Sync. to ECLKOUT2"}))
  688.     prop CESEC2_VALUE_update :: (self.SYNCRL2_CESEC2() | self.SYNCWL2_CESEC2() | self.CEEXT2_CESEC2() | self.RENEN2_CESEC2() | self.SNCCLK2_CESEC2())
  689.     prop CESEC2_SETUP_update :: (self.SYNCRL2_SETUP = ($a = ($1 & 0x00000003), if ($a == 0x00000000) {"0 cycle"} else {if ($a == 0x00000001) {"1 cycle"} else {if ($a == 0x00000002) {"2 cycles"} else {"3 cycles"}}}), self.SYNCWL2_SETUP = ($a = ($1 & 0x0000000C), if ($a == 0x00000000) {"0 cycle"} else {if ($a == 0x00000004) {"1 cycle"} else {if ($a == 0x00000008) {"2 cycles"} else {"3 cycles"}}}), self.CEEXT2_SETUP = ($a = ($1 & 0x00000010), if ($a == 0x00000000) {"Inactive"} else {"Active"}), self.RENEN2_SETUP = ($a = ($1 & 0x00000020), if ($a == 0x00000000) {"ADS Mode"} else {"Read Enable Mode"}), self.SNCCLK2_SETUP = ($a = ($1 & 0x00000040), if ($a == 0x00000000) {"Sync. to ECLKOUT1"} else {"Sync. to ECLKOUT2"}))
  690.     prop CESEC3_VALUE_update :: (self.SYNCRL3_CESEC3() | self.SYNCWL3_CESEC3() | self.CEEXT3_CESEC3() | self.RENEN3_CESEC3() | self.SNCCLK3_CESEC3())
  691.     prop CESEC3_SETUP_update :: (self.SYNCRL3_SETUP = ($a = ($1 & 0x00000003), if ($a == 0x00000000) {"0 cycle"} else {if ($a == 0x00000001) {"1 cycle"} else {if ($a == 0x00000002) {"2 cycles"} else {"3 cycles"}}}), self.SYNCWL3_SETUP = ($a = ($1 & 0x0000000C), if ($a == 0x00000000) {"0 cycle"} else {if ($a == 0x00000004) {"1 cycle"} else {if ($a == 0x00000008) {"2 cycles"} else {"3 cycles"}}}), self.CEEXT3_SETUP = ($a = ($1 & 0x00000010), if ($a == 0x00000000) {"Inactive"} else {"Active"}), self.RENEN3_SETUP = ($a = ($1 & 0x00000020), if ($a == 0x00000000) {"ADS Mode"} else {"Read Enable Mode"}), self.SNCCLK3_SETUP = ($a = ($1 & 0x00000040), if ($a == 0x00000000) {"Sync. to ECLKOUT1"} else {"Sync. to ECLKOUT2"}))
  692.     global gUser :: "USER" { 
  693.         prop Visible :: 0
  694.         prop Writable :: 0
  695.         prop NoGen :: 1
  696.     }
  697.     global gSetOf :: 0 { 
  698.         prop Visible :: 0
  699.         prop Writable :: 0
  700.         prop NoGen :: 1
  701.     }
  702.     global gNumOf :: 0 { 
  703.         prop Visible :: 0
  704.         prop Writable :: 0
  705.         prop NoGen :: 1
  706.     }
  707.     global gDirty :: 0 { 
  708.         prop Visible :: 0
  709.         prop Writable :: 0
  710.         prop NoGen :: 1
  711.     }
  712.     global gInitFlag :: 1 { 
  713.         prop Visible :: 0
  714.         prop Writable :: 0
  715.         prop NoGen :: 1
  716.     }
  717.     global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { 
  718.         prop Visible :: 0
  719.         prop Writable :: 0
  720.         prop NoGen :: 1
  721.     }
  722.     inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} { 
  723.         prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
  724.         prop Label :: "comment"
  725.         prop JSName :: "comment"
  726.         prop Visible :: 1
  727.         prop Writable :: if self.iDelUser == "USER" {1} else {0}
  728.         prop NoGen :: 1
  729.     }
  730.     inst iIsUsed :: 0 { 
  731.         prop Visible :: 0
  732.         prop Writable :: 0
  733.         prop NoGen :: 1
  734.     }
  735.     inst iId :: 0 { 
  736.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  737.         prop Style :: 0x01
  738.         prop Visible :: 0
  739.         prop Writable :: 1
  740.         prop NoGen :: 1
  741.     }
  742.     inst iDelUser :: "USER" { 
  743.         prop Visible :: 0
  744.         prop Writable :: 0
  745.         prop NoGen :: 1
  746.     }
  747.     inst iDelMsg :: "ok" { 
  748.         prop Visible :: 0
  749.         prop Writable :: 0
  750.         prop NoGen :: 1
  751.     }
  752.     inst cConfigGen :: = ((hEmifa.EMIFA_INIT_ENABLE == 1) && (hEmifa.EMIFA_INIT == self) && (hEmifa.EMIFA_INIT != EMIFA_NOTHING)) { 
  753.         prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
  754.         prop NoGen :: 1
  755.         prop Visible :: 0
  756.     }
  757.     inst cConfigArg0 :: = hEmifa.EMIFA_INIT { 
  758.         prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
  759.         prop MemberType :: emifaCfg
  760.         prop Label :: "Pre-initialize Config"
  761.         prop Visible :: 0
  762.         prop Writable :: (CSL.EMIFA_SUPPORT)
  763.         prop NoGen :: 0
  764.         prop cPreVal :: "&"
  765.     }
  766.     inst NOHOLD_SETUP :: "Enable Hold" { 
  767.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  768.         prop Enum :: "Enable Hold,Disable Hold"
  769.         prop Label :: "External HOLD disable (NOHOLD)"
  770.         prop JSName :: "emifaGblctlNoHold"
  771.         prop Visible :: 1
  772.         prop Writable :: (CSL.EMIFA_SUPPORT)
  773.         prop NoGen :: 1
  774.         prop TabName :: "Global Control"
  775.         prop Set :: (self.NOHOLD_SETUP = $1, self.GBLCTL_VALUE = self.GBLCTL_VALUE_update(), "ok")
  776.     }
  777.     inst CLK4EN_SETUP :: "Enabled to clock" { 
  778.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  779.         prop Enum :: "Held high,Enabled to clock"
  780.         prop Label :: "CLKOUT4 Enable (CLK4EN)"
  781.         prop JSName :: "emifaGblctlClk4en"
  782.         prop Visible :: 1
  783.         prop Writable :: if (CSL.EMIFA_SUPPORT != 0) {1} else {0}
  784.         prop NoGen :: 1
  785.         prop TabName :: "Global Control"
  786.         prop Set :: (self.CLK4EN_SETUP = $1, self.GBLCTL_VALUE = self.GBLCTL_VALUE_update(), "ok")
  787.     }
  788.     inst CLK6EN_SETUP :: "Enabled to clock" { 
  789.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  790.         prop Enum :: "Held high,Enabled to clock"
  791.         prop Label :: "CLKOUT6 Enable (CLK6EN)"
  792.         prop JSName :: "emifaGblctlClk6en"
  793.         prop Visible :: 1
  794.         prop Writable :: if (CSL.EMIFA_SUPPORT != 0) {1} else {0}
  795.         prop NoGen :: 1
  796.         prop TabName :: "Global Control"
  797.         prop Set :: (self.CLK6EN_SETUP = $1, self.GBLCTL_VALUE = self.GBLCTL_VALUE_update(), "ok")
  798.     }
  799.     inst EK1EN_SETUP :: "Enabled to clock" { 
  800.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  801.         prop Enum :: "Held low,Enabled to clock"
  802.         prop Label :: "ECLKOUT1 Enable (EK1EN)"
  803.         prop JSName :: "emifaGblctlEk1en"
  804.         prop Visible :: 1
  805.         prop Writable :: if (CSL.EMIFA_SUPPORT != 0) {1} else {0}
  806.         prop NoGen :: 1
  807.         prop TabName :: "Global Control"
  808.         prop Set :: (self.EK1EN_SETUP = $1, self.GBLCTL_VALUE = self.GBLCTL_VALUE_update(), "ok")
  809.     }
  810.     inst EK2EN_SETUP :: "Enabled to clock" { 
  811.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  812.         prop Enum :: "Held low,Enabled to clock"
  813.         prop Label :: "ECLKOUT2 Enable (EK2EN)"
  814.         prop JSName :: "emifaGblctlEk2en"
  815.         prop Visible :: 1
  816.         prop Writable :: if (CSL.EMIFA_SUPPORT != 0) {1} else {0}
  817.         prop NoGen :: 1
  818.         prop TabName :: "Global Control"
  819.         prop Set :: (self.EK2EN_SETUP = $1, self.GBLCTL_VALUE = self.GBLCTL_VALUE_update(), "ok")
  820.     }
  821.     inst EK1HZ_SETUP :: "High-Z during hold" { 
  822.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  823.         prop Enum :: "Clock during hold,High-Z during hold"
  824.         prop Label :: "ECLKOUT1 High-Z Control (EK1HZ)"
  825.         prop JSName :: "emifaGblctlEk1hz"
  826.         prop Visible :: 1
  827.         prop Writable :: if (CSL.EMIFA_SUPPORT != 0) {1} else {0}
  828.         prop NoGen :: 1
  829.         prop TabName :: "Global Control"
  830.         prop Set :: (self.EK1HZ_SETUP = $1, self.GBLCTL_VALUE = self.GBLCTL_VALUE_update(), "ok")
  831.     }
  832.     inst EK2HZ_SETUP :: "Clock during hold" { 
  833.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  834.         prop Enum :: "Clock during hold,High-Z during hold"
  835.         prop Label :: "ECLKOUT2 High-Z Control (EK2HZ)"
  836.         prop JSName :: "emifaGblctlEk2hz"
  837.         prop Visible :: 1
  838.         prop Writable :: if (CSL.EMIFA_SUPPORT != 0) {1} else {0}
  839.         prop NoGen :: 1
  840.         prop TabName :: "Global Control"
  841.         prop Set :: (self.EK2HZ_SETUP = $1, self.GBLCTL_VALUE = self.GBLCTL_VALUE_update(), "ok")
  842.     }
  843.     inst EK2RATE_SETUP :: "1/4x EMIF input clock" { 
  844.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  845.         prop Enum :: "1x EMIF input clock,1/2x EMIF input clock,1/4x EMIF input clock"
  846.         prop Label :: "ECLKOUT2 Rate (EK2RATE)"
  847.         prop JSName :: "emifaGblctlEk2rate"
  848.         prop Visible :: 1
  849.         prop Writable :: if (CSL.EMIFA_SUPPORT != 0) {1} else {0}
  850.         prop NoGen :: 1
  851.         prop TabName :: "Global Control"
  852.         prop Set :: (self.EK2RATE_SETUP = $1, self.GBLCTL_VALUE = self.GBLCTL_VALUE_update(), "ok")
  853.     }
  854.     inst BRMODE_SETUP :: "access/refresh pending or in progress" { 
  855.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  856.         prop Enum :: "access/refresh pending or in progress,access pending or in progress"
  857.         prop Label :: "Bus Request Mode"
  858.         prop JSName :: "emifaGblctlBrmode"
  859.         prop Visible :: 1
  860.         prop Writable :: if (CSL.EMIFA_SUPPORT != 0) {1} else {0}
  861.         prop NoGen :: 1
  862.         prop TabName :: "Global Control"
  863.         prop Set :: (self.BRMODE_SETUP = $1, self.GBLCTL_VALUE = self.GBLCTL_VALUE_update(), "ok")
  864.     }
  865.     inst MTYPE0_SETUP :: "32-bit async. interf." { 
  866.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  867.         prop Enum :: "  8-bit async. interf.,16-bit async. interf.,32-bit async. interf.,64-bit async. interf.,  8-bit SDRAM,16-bit SDRAM,32-bit SDRAM,64-bit SDRAM,  8-bit prog. sync. mem,16-bit prog. sync. mem,32-bit prog. sync. mem,64-bit prog. sync. mem"
  868.         prop Label :: "Memory Type (MTYPE)"
  869.         prop JSName :: "emifaCectl0Mtype"
  870.         prop Visible :: 1
  871.         prop Writable :: (if (CSL.EMIFA_SUPPORT) {1} else {0})
  872.         prop NoGen :: 1
  873.         prop TabName :: "CE0 Space"
  874.         prop Set :: (self.MTYPE0_SETUP = $1, self.CECTL0_VALUE = self.CECTL0_VALUE_update(), "ok")
  875.     }
  876.     inst RDSTRB0_SETUP :: 63 { 
  877.         prop Label :: "Read Strobe Width "
  878.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  879.         prop Style :: 0x01 | 0x02
  880.         prop JSName :: "emifaCectl0ReadStrobe"
  881.         prop Visible :: 1
  882.         prop Writable :: (CSL.EMIFA_SUPPORT)
  883.         prop NoGen :: 1
  884.         prop TabName :: "CE0 Space"
  885.         prop Set :: (if ($1 < 0 || $1 > 63) {self.error(" Minimum strobe :0 cycle - Maximum strobe: 63 cycless")} else {self.RDSTRB0_SETUP = $1, self.CECTL0_VALUE = self.CECTL0_VALUE_update(), "ok"})
  886.     }
  887.     inst RDSETUP0_SETUP :: 15 { 
  888.         prop Label :: "Read Setup Width "
  889.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  890.         prop Style :: 0x01 | 0x02
  891.         prop JSName :: "emifaCectl0ReadSetup"
  892.         prop Visible :: 1
  893.         prop Writable :: (CSL.EMIFA_SUPPORT)
  894.         prop NoGen :: 1
  895.         prop TabName :: "CE0 Space"
  896.         prop Set :: (if ($1 < 0 || $1 > 15) {self.error(" Minimum setup :0 cycle - Maximum setup: 15 cycles")} else {self.RDSETUP0_SETUP = $1, self.CECTL0_VALUE = self.CECTL0_VALUE_update(), "ok"})
  897.     }
  898.     inst RDHLD0_SETUP :: 3 { 
  899.         prop Label :: "Read Hold Width "
  900.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  901.         prop Style :: 0x01 | 0x02
  902.         prop JSName :: "emifaCectl0ReadHold"
  903.         prop Visible :: 1
  904.         prop Writable :: (CSL.EMIFA_SUPPORT)
  905.         prop NoGen :: 1
  906.         prop TabName :: "CE0 Space"
  907.         prop Set :: (if ((!CSL.C11_SUPPORT)) {if ($1 < 0 || $1 > 3) {self.error(" Minimum hold :0 cycle - Maximum hold: 3 cycless")} else {self.RDHLD0_SETUP = $1, self.CECTL0_VALUE = self.CECTL0_VALUE_update(), "ok"}} else {if ($1 < 0 || $1 > 7) {self.error(" Minimum hold :0 cycle - Maximum hold: 7 cycles")} else {self.RDHLD0_SETUP = $1, self.CECTL0_VALUE = self.CECTL0_VALUE_update(), "ok"}})
  908.     }
  909.     inst WRSTRB0_SETUP :: 63 { 
  910.         prop Label :: "Write Strobe Width "
  911.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  912.         prop Style :: 0x01 | 0x02
  913.         prop JSName :: "emifaCectl0WriteStrobe"
  914.         prop Visible :: 1
  915.         prop Writable :: (CSL.EMIFA_SUPPORT)
  916.         prop NoGen :: 1
  917.         prop TabName :: "CE0 Space"
  918.         prop Set :: (if ($1 < 0 || $1 > 63) {self.error(" Minimum strobe :0 cycle - Maximum strobe: 63 cycless")} else {self.WRSTRB0_SETUP = $1, self.CECTL0_VALUE = self.CECTL0_VALUE_update(), "ok"})
  919.     }
  920.     inst WRSETUP0_SETUP :: 15 { 
  921.         prop Label :: "Write Setup Width "
  922.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  923.         prop Style :: 0x01 | 0x02
  924.         prop JSName :: "emifaCectl0WriteSetup"
  925.         prop Visible :: 1
  926.         prop Writable :: (CSL.EMIFA_SUPPORT)
  927.         prop NoGen :: 1
  928.         prop TabName :: "CE0 Space"
  929.         prop Set :: (if ($1 < 0 || $1 > 15) {self.error(" Minimum setup :0 cycle - Maximum setup: 15 cycles")} else {self.WRSETUP0_SETUP = $1, self.CECTL0_VALUE = self.CECTL0_VALUE_update(), "ok"})
  930.     }
  931.     inst WRHLD0_SETUP :: 3 { 
  932.         prop Label :: "Write Hold Width (WRHLD-WRHLDMSB) "
  933.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  934.         prop Style :: 0x01 | 0x02
  935.         prop JSName :: "emifaCectl0WriteHold"
  936.         prop Visible :: 1
  937.         prop Writable :: (CSL.EMIFA_SUPPORT)
  938.         prop NoGen :: 1
  939.         prop TabName :: "CE0 Space"
  940.         prop Set :: (if ($1 < 0 || $1 > 7) {self.error(" Minimum hold :0 cycle - Maximum hold: 7 cycles")} else {self.WRHLD0_SETUP = $1, self.CECTL0_VALUE = self.CECTL0_VALUE_update(), "ok"})
  941.     }
  942.     inst TA0_SETUP :: 3 { 
  943.         prop Label :: "Turn around time (TA) "
  944.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  945.         prop Style :: 0x01 | 0x02
  946.         prop JSName :: "emifaCectl0Ta"
  947.         prop Visible :: 1
  948.         prop Writable :: (CSL.EMIFA_SUPPORT)
  949.         prop NoGen :: 1
  950.         prop TabName :: "CE0 Space"
  951.         prop Set :: (if ($1 < 1 || $1 > 3) {self.error(" Minimum: 1 ECLKOU1 cycle - Maximum : 3 ECLKOU1 cycles")} else {self.TA0_SETUP = $1, self.CECTL0_VALUE = self.CECTL0_VALUE_update(), "ok"})
  952.     }
  953.     inst MTYPE1_SETUP :: "32-bit async. interf." { 
  954.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  955.         prop Enum :: "  8-bit async. interf.,16-bit async. interf.,32-bit async. interf.,64-bit async. interf.,  8-bit SDRAM,16-bit SDRAM,32-bit SDRAM,64-bit SDRAM,  8-bit prog. sync. mem,16-bit prog. sync. mem,32-bit prog. sync. mem,64-bit prog. sync. mem"
  956.         prop Label :: "Memory Type (MTYPE)"
  957.         prop JSName :: "emifaCectl1Mtype"
  958.         prop Visible :: 1
  959.         prop Writable :: (if (CSL.EMIFA_SUPPORT) {1} else {0})
  960.         prop NoGen :: 1
  961.         prop TabName :: "CE1 Space"
  962.         prop Set :: (self.MTYPE1_SETUP = $1, self.CECTL1_VALUE = self.CECTL1_VALUE_update(), "ok")
  963.     }
  964.     inst RDSTRB1_SETUP :: 63 { 
  965.         prop Label :: "Read Strobe Width "
  966.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  967.         prop Style :: 0x01 | 0x02
  968.         prop JSName :: "emifaCectl1ReadStrobe"
  969.         prop Visible :: 1
  970.         prop Writable :: (CSL.EMIFA_SUPPORT)
  971.         prop NoGen :: 1
  972.         prop TabName :: "CE1 Space"
  973.         prop Set :: (if ($1 < 0 || $1 > 63) {self.error(" Minimum strobe :0 cycle - Maximum strobe: 63 cycless")} else {self.RDSTRB1_SETUP = $1, self.CECTL1_VALUE = self.CECTL1_VALUE_update(), "ok"})
  974.     }
  975.     inst RDSETUP1_SETUP :: 15 { 
  976.         prop Label :: "Read Setup Width "
  977.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  978.         prop Style :: 0x01 | 0x02
  979.         prop JSName :: "emifaCectl1ReadSetup"
  980.         prop Visible :: 1
  981.         prop Writable :: (CSL.EMIFA_SUPPORT)
  982.         prop NoGen :: 1
  983.         prop TabName :: "CE1 Space"
  984.         prop Set :: (if ($1 < 0 || $1 > 15) {self.error(" Minimum setup :0 cycle - Maximum setup: 15 cycles")} else {self.RDSETUP1_SETUP = $1, self.CECTL1_VALUE = self.CECTL1_VALUE_update(), "ok"})
  985.     }
  986.     inst RDHLD1_SETUP :: 3 { 
  987.         prop Label :: "Read Hold Width "
  988.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  989.         prop Style :: 0x01 | 0x02
  990.         prop JSName :: "emifaCectl1ReadHold"
  991.         prop Visible :: 1
  992.         prop Writable :: (CSL.EMIFA_SUPPORT)
  993.         prop NoGen :: 1
  994.         prop TabName :: "CE1 Space"
  995.         prop Set :: (if ((!CSL.C11_SUPPORT)) {if ($1 < 0 || $1 > 3) {self.error(" Minimum hold :0 cycle - Maximum hold: 3 cycless")} else {self.RDHLD1_SETUP = $1, self.CECTL1_VALUE = self.CECTL1_VALUE_update(), "ok"}} else {if ($1 < 0 || $1 > 7) {self.error(" Minimum hold :0 cycle - Maximum hold: 7 cycles")} else {self.RDHLD1_SETUP = $1, self.CECTL1_VALUE = self.CECTL1_VALUE_update(), "ok"}})
  996.     }
  997.     inst WRSTRB1_SETUP :: 63 { 
  998.         prop Label :: "Write Strobe Width "
  999.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1000.         prop Style :: 0x01 | 0x02
  1001.         prop JSName :: "emifaCectl1WriteStrobe"
  1002.         prop Visible :: 1
  1003.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1004.         prop NoGen :: 1
  1005.         prop TabName :: "CE1 Space"
  1006.         prop Set :: (if ($1 < 0 || $1 > 63) {self.error(" Minimum strobe :0 cycle - Maximum strobe: 63 cycless")} else {self.WRSTRB1_SETUP = $1, self.CECTL1_VALUE = self.CECTL1_VALUE_update(), "ok"})
  1007.     }
  1008.     inst WRSETUP1_SETUP :: 15 { 
  1009.         prop Label :: "Write Setup Width "
  1010.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1011.         prop Style :: 0x01 | 0x02
  1012.         prop JSName :: "emifaCectl1WriteSetup"
  1013.         prop Visible :: 1
  1014.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1015.         prop NoGen :: 1
  1016.         prop TabName :: "CE1 Space"
  1017.         prop Set :: (if ($1 < 0 || $1 > 15) {self.error(" Minimum setup :0 cycle - Maximum setup: 15 cycles")} else {self.WRSETUP1_SETUP = $1, self.CECTL1_VALUE = self.CECTL1_VALUE_update(), "ok"})
  1018.     }
  1019.     inst WRHLD1_SETUP :: 3 { 
  1020.         prop Label :: "Write Hold Width (WRHLD - WHLDMSB) "
  1021.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1022.         prop Style :: 0x01 | 0x02
  1023.         prop JSName :: "emifaCectl1WriteHold"
  1024.         prop Visible :: 1
  1025.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1026.         prop NoGen :: 1
  1027.         prop TabName :: "CE1 Space"
  1028.         prop Set :: (if ($1 < 0 || $1 > 7) {self.error(" Minimum hold :0 cycle - Maximum hold: 7 cycles")} else {self.WRHLD1_SETUP = $1, self.CECTL1_VALUE = self.CECTL1_VALUE_update(), "ok"})
  1029.     }
  1030.     inst TA1_SETUP :: 3 { 
  1031.         prop Label :: "Turn around time (TA) "
  1032.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1033.         prop Style :: 0x01 | 0x02
  1034.         prop JSName :: "emifaCectl1Ta"
  1035.         prop Visible :: 1
  1036.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1037.         prop NoGen :: 1
  1038.         prop TabName :: "CE1 Space"
  1039.         prop Set :: (if ($1 < 1 || $1 > 3) {self.error(" Minimum: 1 ECLKOU1 cycle - Maximum : 3 ECLKOU1 cycles")} else {self.TA1_SETUP = $1, self.CECTL1_VALUE = self.CECTL1_VALUE_update(), "ok"})
  1040.     }
  1041.     inst MTYPE2_SETUP :: "32-bit async. interf." { 
  1042.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1043.         prop Enum :: "  8-bit async. interf.,16-bit async. interf.,32-bit async. interf.,64-bit async. interf.,  8-bit SDRAM,16-bit SDRAM,32-bit SDRAM,64-bit SDRAM,  8-bit prog. sync. mem,16-bit prog. sync. mem,32-bit prog. sync. mem,64-bit prog. sync. mem"
  1044.         prop Label :: "Memory Type (MTYPE)"
  1045.         prop JSName :: "emifaCectl2Mtype"
  1046.         prop Visible :: 1
  1047.         prop Writable :: (if (CSL.EMIFA_SUPPORT) {1} else {0})
  1048.         prop NoGen :: 1
  1049.         prop TabName :: "CE2 Space"
  1050.         prop Set :: (self.MTYPE2_SETUP = $1, self.CECTL2_VALUE = self.CECTL2_VALUE_update(), "ok")
  1051.     }
  1052.     inst RDSTRB2_SETUP :: 63 { 
  1053.         prop Label :: "Read Strobe Width "
  1054.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1055.         prop Style :: 0x01 | 0x02
  1056.         prop JSName :: "emifaCectl2ReadStrobe"
  1057.         prop Visible :: 1
  1058.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1059.         prop NoGen :: 1
  1060.         prop TabName :: "CE2 Space"
  1061.         prop Set :: (if ($1 < 0 || $1 > 63) {self.error(" Minimum strobe :0 cycle - Maximum strobe: 63 cycless")} else {self.RDSTRB2_SETUP = $1, self.CECTL2_VALUE = self.CECTL2_VALUE_update(), "ok"})
  1062.     }
  1063.     inst RDSETUP2_SETUP :: 15 { 
  1064.         prop Label :: "Read Setup Width "
  1065.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1066.         prop Style :: 0x01 | 0x02
  1067.         prop JSName :: "emifaCectl2ReadSetup"
  1068.         prop Visible :: 1
  1069.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1070.         prop NoGen :: 1
  1071.         prop TabName :: "CE2 Space"
  1072.         prop Set :: (if ($1 < 0 || $1 > 15) {self.error(" Minimum setup :0 cycle - Maximum setup: 15 cycles")} else {self.RDSETUP2_SETUP = $1, self.CECTL2_VALUE = self.CECTL2_VALUE_update(), "ok"})
  1073.     }
  1074.     inst RDHLD2_SETUP :: 3 { 
  1075.         prop Label :: "Read Hold Width "
  1076.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1077.         prop Style :: 0x01 | 0x02
  1078.         prop JSName :: "emifaCectl2ReadHold"
  1079.         prop Visible :: 1
  1080.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1081.         prop NoGen :: 1
  1082.         prop TabName :: "CE2 Space"
  1083.         prop Set :: (if ((!CSL.C11_SUPPORT)) {if ($1 < 0 || $1 > 3) {self.error(" Minimum hold :0 cycle - Maximum hold: 3 cycless")} else {self.RDHLD2_SETUP = $1, self.CECTL2_VALUE = self.CECTL2_VALUE_update(), "ok"}} else {if ($1 < 0 || $1 > 7) {self.error(" Minimum hold :0 cycle - Maximum hold: 7 cycles")} else {self.RDHLD2_SETUP = $1, self.CECTL2_VALUE = self.CECTL2_VALUE_update(), "ok"}})
  1084.     }
  1085.     inst WRSTRB2_SETUP :: 63 { 
  1086.         prop Label :: "Write Strobe Width "
  1087.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1088.         prop Style :: 0x01 | 0x02
  1089.         prop JSName :: "emifaCectl2WriteStrobe"
  1090.         prop Visible :: 1
  1091.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1092.         prop NoGen :: 1
  1093.         prop TabName :: "CE2 Space"
  1094.         prop Set :: (if ($1 < 0 || $1 > 63) {self.error(" Minimum strobe :0 cycle - Maximum strobe: 63 cycless")} else {self.WRSTRB2_SETUP = $1, self.CECTL2_VALUE = self.CECTL2_VALUE_update(), "ok"})
  1095.     }
  1096.     inst WRSETUP2_SETUP :: 15 { 
  1097.         prop Label :: "Write Setup Width "
  1098.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1099.         prop Style :: 0x01 | 0x02
  1100.         prop JSName :: "emifaCectl2WriteSetup"
  1101.         prop Visible :: 1
  1102.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1103.         prop NoGen :: 1
  1104.         prop TabName :: "CE2 Space"
  1105.         prop Set :: (if ($1 < 0 || $1 > 15) {self.error(" Minimum setup :0 cycle - Maximum setup: 15 cycles")} else {self.WRSETUP2_SETUP = $1, self.CECTL2_VALUE = self.CECTL2_VALUE_update(), "ok"})
  1106.     }
  1107.     inst WRHLD2_SETUP :: 3 { 
  1108.         prop Label :: "Write Hold Width "
  1109.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1110.         prop Style :: 0x01 | 0x02
  1111.         prop JSName :: "emifaCectl2WriteHold"
  1112.         prop Visible :: 1
  1113.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1114.         prop NoGen :: 1
  1115.         prop TabName :: "CE2 Space"
  1116.         prop Set :: (if ($1 < 0 || $1 > 7) {self.error(" Minimum hold :0 cycle - Maximum hold: 7 cycles")} else {self.WRHLD2_SETUP = $1, self.CECTL2_VALUE = self.CECTL2_VALUE_update(), "ok"})
  1117.     }
  1118.     inst TA2_SETUP :: 3 { 
  1119.         prop Label :: "Turn around time (TA) "
  1120.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1121.         prop Style :: 0x01 | 0x02
  1122.         prop JSName :: "emifaCectl2Ta"
  1123.         prop Visible :: 1
  1124.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1125.         prop NoGen :: 1
  1126.         prop TabName :: "CE2 Space"
  1127.         prop Set :: (if ($1 < 1 || $1 > 3) {self.error(" Minimum: 1 ECLKOU1 cycle - Maximum : 3 ECLKOU1 cycles")} else {self.TA2_SETUP = $1, self.CECTL2_VALUE = self.CECTL2_VALUE_update(), "ok"})
  1128.     }
  1129.     inst MTYPE3_SETUP :: "32-bit async. interf." { 
  1130.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1131.         prop Enum :: "  8-bit async. interf.,16-bit async. interf.,32-bit async. interf.,64-bit async. interf.,  8-bit SDRAM,16-bit SDRAM,32-bit SDRAM,64-bit SDRAM,  8-bit prog. sync. mem,16-bit prog. sync. mem,32-bit prog. sync. mem,64-bit prog. sync. mem"
  1132.         prop Label :: "Memory Type (MTYPE)"
  1133.         prop JSName :: "emifaCectl3Mtype"
  1134.         prop Visible :: 1
  1135.         prop Writable :: (if (CSL.EMIFA_SUPPORT) {1} else {0})
  1136.         prop NoGen :: 1
  1137.         prop TabName :: "CE3 Space"
  1138.         prop Set :: (self.MTYPE3_SETUP = $1, self.CECTL3_VALUE = self.CECTL3_VALUE_update(), "ok")
  1139.     }
  1140.     inst RDSTRB3_SETUP :: 63 { 
  1141.         prop Label :: "Read Strobe Width "
  1142.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1143.         prop Style :: 0x01 | 0x02
  1144.         prop JSName :: "emifaCectl3ReadStrobe"
  1145.         prop Visible :: 1
  1146.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1147.         prop NoGen :: 1
  1148.         prop TabName :: "CE3 Space"
  1149.         prop Set :: (if ($1 < 0 || $1 > 63) {self.error(" Minimum strobe :0 cycle - Maximum strobe: 63 cycless")} else {self.RDSTRB3_SETUP = $1, self.CECTL3_VALUE = self.CECTL3_VALUE_update(), "ok"})
  1150.     }
  1151.     inst RDSETUP3_SETUP :: 15 { 
  1152.         prop Label :: "Read Setup Width "
  1153.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1154.         prop Style :: 0x01 | 0x02
  1155.         prop JSName :: "emifaCectl3ReadSetup"
  1156.         prop Visible :: 1
  1157.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1158.         prop NoGen :: 1
  1159.         prop TabName :: "CE3 Space"
  1160.         prop Set :: (if ($1 < 0 || $1 > 15) {self.error(" Minimum setup :0 cycle - Maximum setup: 15 cycles")} else {self.RDSETUP3_SETUP = $1, self.CECTL3_VALUE = self.CECTL3_VALUE_update(), "ok"})
  1161.     }
  1162.     inst RDHLD3_SETUP :: 3 { 
  1163.         prop Label :: "Read Hold Width "
  1164.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1165.         prop Style :: 0x01 | 0x02
  1166.         prop JSName :: "emifaCectl3ReadHold"
  1167.         prop Visible :: 1
  1168.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1169.         prop NoGen :: 1
  1170.         prop TabName :: "CE3 Space"
  1171.         prop Set :: (if ((!CSL.C11_SUPPORT)) {if ($1 < 0 || $1 > 3) {self.error(" Minimum hold :0 cycle - Maximum hold: 3 cycless")} else {self.RDHLD3_SETUP = $1, self.CECTL3_VALUE = self.CECTL3_VALUE_update(), "ok"}} else {if ($1 < 0 || $1 > 7) {self.error(" Minimum hold :0 cycle - Maximum hold: 7 cycles")} else {self.RDHLD3_SETUP = $1, self.CECTL3_VALUE = self.CECTL3_VALUE_update(), "ok"}})
  1172.     }
  1173.     inst WRSTRB3_SETUP :: 63 { 
  1174.         prop Label :: "Write Strobe Width "
  1175.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1176.         prop Style :: 0x01 | 0x02
  1177.         prop JSName :: "emifaCectl3WriteStrobe"
  1178.         prop Visible :: 1
  1179.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1180.         prop NoGen :: 1
  1181.         prop TabName :: "CE3 Space"
  1182.         prop Set :: (if ($1 < 0 || $1 > 63) {self.error(" Minimum strobe :0 cycle - Maximum strobe: 63 cycless")} else {self.WRSTRB3_SETUP = $1, self.CECTL3_VALUE = self.CECTL3_VALUE_update(), "ok"})
  1183.     }
  1184.     inst WRSETUP3_SETUP :: 15 { 
  1185.         prop Label :: "Write Setup Width "
  1186.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1187.         prop Style :: 0x01 | 0x02
  1188.         prop JSName :: "emifaCectl3WriteSetup"
  1189.         prop Visible :: 1
  1190.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1191.         prop NoGen :: 1
  1192.         prop TabName :: "CE3 Space"
  1193.         prop Set :: (if ($1 < 0 || $1 > 15) {self.error(" Minimum setup :0 cycle - Maximum setup: 15 cycles")} else {self.WRSETUP3_SETUP = $1, self.CECTL3_VALUE = self.CECTL3_VALUE_update(), "ok"})
  1194.     }
  1195.     inst WRHLD3_SETUP :: 3 { 
  1196.         prop Label :: "Write Hold Width "
  1197.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1198.         prop Style :: 0x01 | 0x02
  1199.         prop JSName :: "emifaCectl3WriteHold"
  1200.         prop Visible :: 1
  1201.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1202.         prop NoGen :: 1
  1203.         prop TabName :: "CE3 Space"
  1204.         prop Set :: (if ($1 < 0 || $1 > 7) {self.error(" Minimum hold :0 cycle - Maximum hold: 7 cycles")} else {self.WRHLD3_SETUP = $1, self.CECTL3_VALUE = self.CECTL3_VALUE_update(), "ok"})
  1205.     }
  1206.     inst TA3_SETUP :: 3 { 
  1207.         prop Label :: "Turn around time (TA) "
  1208.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1209.         prop Style :: 0x01 | 0x02
  1210.         prop JSName :: "emifaCectl3Ta"
  1211.         prop Visible :: 1
  1212.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1213.         prop NoGen :: 1
  1214.         prop TabName :: "CE3 Space"
  1215.         prop Set :: (if ($1 < 1 || $1 > 3) {self.error(" Minimum: 1 ECLKOU1 cycle - Maximum : 3 ECLKOU1 cycles")} else {self.TA3_SETUP = $1, self.CECTL3_VALUE = self.CECTL3_VALUE_update(), "ok"})
  1216.     }
  1217.     inst SYNCRL0_SETUP :: "2 cycles" { 
  1218.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1219.         prop Enum :: "0 cycle,1 cycle,2 cycles,3 cycles"
  1220.         prop Label :: "Sync. interf. data read latency (SYNCRL)"
  1221.         prop JSName :: "emifaCesec0Syncrl"
  1222.         prop Visible :: 1
  1223.         prop Writable :: (if (CSL.EMIFA_SUPPORT) {1} else {0})
  1224.         prop NoGen :: 1
  1225.         prop TabName :: "CE0 Space"
  1226.         prop Set :: (self.SYNCRL0_SETUP = $1, self.CESEC0_VALUE = self.CESEC0_VALUE_update(), "ok")
  1227.     }
  1228.     inst SYNCWL0_SETUP :: "0 cycle" { 
  1229.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1230.         prop Enum :: "0 cycle,1 cycle,2 cycles,3 cycles"
  1231.         prop Label :: "Sync. interf. data write latency (SYNCWL)"
  1232.         prop Visible :: 1
  1233.         prop JSName :: "emifaCesec0Syncwl"
  1234.         prop Writable :: (if (CSL.EMIFA_SUPPORT) {1} else {0})
  1235.         prop NoGen :: 1
  1236.         prop TabName :: "CE0 Space"
  1237.         prop Set :: (self.SYNCWL0_SETUP = $1, self.CESEC0_VALUE = self.CESEC0_VALUE_update(), "ok")
  1238.     }
  1239.     inst CEEXT0_SETUP :: "Inactive" { 
  1240.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1241.         prop Enum :: "Inactive,Active"
  1242.         prop Label :: "CE Extension Register (CEEXT)"
  1243.         prop JSName :: "emifaCesec0Ceext"
  1244.         prop Visible :: 1
  1245.         prop Writable :: (if (CSL.EMIFA_SUPPORT) {1} else {0})
  1246.         prop NoGen :: 1
  1247.         prop TabName :: "CE0 Space"
  1248.         prop Set :: (self.CEEXT0_SETUP = $1, self.CESEC0_VALUE = self.CESEC0_VALUE_update(), "ok")
  1249.     }
  1250.     inst RENEN0_SETUP :: "ADS Mode" { 
  1251.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1252.         prop Enum :: "ADS Mode,Read Enable Mode"
  1253.         prop Label :: "Read Enable Enable (RENEN)"
  1254.         prop JSName :: "emifaCesec0Renen"
  1255.         prop Visible :: 1
  1256.         prop Writable :: (if (CSL.EMIFA_SUPPORT) {1} else {0})
  1257.         prop NoGen :: 1
  1258.         prop TabName :: "CE0 Space"
  1259.         prop Set :: (self.RENEN0_SETUP = $1, self.CESEC0_VALUE = self.CESEC0_VALUE_update(), "ok")
  1260.     }
  1261.     inst SNCCLK0_SETUP :: "Sync. to ECLKOUT1" { 
  1262.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1263.         prop Enum :: "Sync. to ECLKOUT1,Sync. to ECLKOUT2"
  1264.         prop Label :: "Synchronization Clock (SNCCLK)"
  1265.         prop JSName :: "emifaCesec0Sncclk"
  1266.         prop Visible :: 1
  1267.         prop Writable :: (if (CSL.EMIFA_SUPPORT) {1} else {0})
  1268.         prop NoGen :: 1
  1269.         prop TabName :: "CE0 Space"
  1270.         prop Set :: (self.SNCCLK0_SETUP = $1, self.CESEC0_VALUE = self.CESEC0_VALUE_update(), "ok")
  1271.     }
  1272.     inst SYNCRL1_SETUP :: "2 cycles" { 
  1273.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1274.         prop Enum :: "0 cycle,1 cycle,2 cycles,3 cycles"
  1275.         prop Label :: "Sync. interf. data read latency (SYNCRL)"
  1276.         prop JSName :: "emifaCesec1Syncrl"
  1277.         prop Visible :: 1
  1278.         prop Writable :: (if (CSL.EMIFA_SUPPORT) {1} else {0})
  1279.         prop NoGen :: 1
  1280.         prop TabName :: "CE1 Space"
  1281.         prop Set :: (self.SYNCRL1_SETUP = $1, self.CESEC1_VALUE = self.CESEC1_VALUE_update(), "ok")
  1282.     }
  1283.     inst SYNCWL1_SETUP :: "0 cycle" { 
  1284.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1285.         prop Enum :: "0 cycle,1 cycle,2 cycles,3 cycles"
  1286.         prop Label :: "Sync. interf. data write latency (SYNCWL)"
  1287.         prop JSName :: "emifaCesec1Syncwl"
  1288.         prop Visible :: 1
  1289.         prop Writable :: (if (CSL.EMIFA_SUPPORT) {1} else {0})
  1290.         prop NoGen :: 1
  1291.         prop TabName :: "CE1 Space"
  1292.         prop Set :: (self.SYNCWL1_SETUP = $1, self.CESEC1_VALUE = self.CESEC1_VALUE_update(), "ok")
  1293.     }
  1294.     inst CEEXT1_SETUP :: "Inactive" { 
  1295.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1296.         prop Enum :: "Inactive,Active"
  1297.         prop Label :: "CE Extension Register (CEEXT)"
  1298.         prop JSName :: "emifaCesec1Ceext"
  1299.         prop Visible :: 1
  1300.         prop Writable :: (if (CSL.EMIFA_SUPPORT) {1} else {0})
  1301.         prop NoGen :: 1
  1302.         prop TabName :: "CE1 Space"
  1303.         prop Set :: (self.CEEXT1_SETUP = $1, self.CESEC1_VALUE = self.CESEC1_VALUE_update(), "ok")
  1304.     }
  1305.     inst RENEN1_SETUP :: "ADS Mode" { 
  1306.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1307.         prop Enum :: "ADS Mode,Read Enable Mode"
  1308.         prop Label :: "Read Enable Enable (RENEN)"
  1309.         prop JSName :: "emifaCesec1Renen"
  1310.         prop Visible :: 1
  1311.         prop Writable :: (if (CSL.EMIFA_SUPPORT) {1} else {0})
  1312.         prop NoGen :: 1
  1313.         prop TabName :: "CE1 Space"
  1314.         prop Set :: (self.RENEN1_SETUP = $1, self.CESEC1_VALUE = self.CESEC1_VALUE_update(), "ok")
  1315.     }
  1316.     inst SNCCLK1_SETUP :: "Sync. to ECLKOUT1" { 
  1317.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1318.         prop Enum :: "Sync. to ECLKOUT1,Sync. to ECLKOUT2"
  1319.         prop Label :: "Synchronization Clock (SNCCLK)"
  1320.         prop JSName :: "emifaCesec1Sncclk"
  1321.         prop Visible :: 1
  1322.         prop Writable :: (if (CSL.EMIFA_SUPPORT) {1} else {0})
  1323.         prop NoGen :: 1
  1324.         prop TabName :: "CE1 Space"
  1325.         prop Set :: (self.SNCCLK1_SETUP = $1, self.CESEC1_VALUE = self.CESEC1_VALUE_update(), "ok")
  1326.     }
  1327.     inst SYNCRL2_SETUP :: "2 cycles" { 
  1328.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1329.         prop Enum :: "0 cycle,1 cycle,2 cycles,3 cycles"
  1330.         prop Label :: "Sync. interf. data read latency (SYNCRL)"
  1331.         prop JSName :: "emifaCesec2Syncrl"
  1332.         prop Visible :: 1
  1333.         prop Writable :: (if (CSL.EMIFA_SUPPORT) {1} else {0})
  1334.         prop NoGen :: 1
  1335.         prop TabName :: "CE2 Space"
  1336.         prop Set :: (self.SYNCRL2_SETUP = $1, self.CESEC2_VALUE = self.CESEC2_VALUE_update(), "ok")
  1337.     }
  1338.     inst SYNCWL2_SETUP :: "0 cycle" { 
  1339.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1340.         prop Enum :: "0 cycle,1 cycle,2 cycles,3 cycles"
  1341.         prop Label :: "Sync. interf. data write latency (SYNCWL)"
  1342.         prop JSName :: "emifaCesec2Syncwl"
  1343.         prop Visible :: 1
  1344.         prop Writable :: (if (CSL.EMIFA_SUPPORT) {1} else {0})
  1345.         prop NoGen :: 1
  1346.         prop TabName :: "CE2 Space"
  1347.         prop Set :: (self.SYNCWL2_SETUP = $1, self.CESEC2_VALUE = self.CESEC2_VALUE_update(), "ok")
  1348.     }
  1349.     inst CEEXT2_SETUP :: "Inactive" { 
  1350.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1351.         prop Enum :: "Inactive,Active"
  1352.         prop Label :: "CE Extension Register (CEEXT)"
  1353.         prop JSName :: "emifaCesec2Ceext"
  1354.         prop Visible :: 1
  1355.         prop Writable :: (if (CSL.EMIFA_SUPPORT) {1} else {0})
  1356.         prop NoGen :: 1
  1357.         prop TabName :: "CE2 Space"
  1358.         prop Set :: (self.CEEXT2_SETUP = $1, self.CESEC2_VALUE = self.CESEC2_VALUE_update(), "ok")
  1359.     }
  1360.     inst RENEN2_SETUP :: "ADS Mode" { 
  1361.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1362.         prop Enum :: "ADS Mode,Read Enable Mode"
  1363.         prop Label :: "Read Enable Enable (RENEN)"
  1364.         prop JSName :: "emifaCesec2Renen"
  1365.         prop Visible :: 1
  1366.         prop Writable :: (if (CSL.EMIFA_SUPPORT) {1} else {0})
  1367.         prop NoGen :: 1
  1368.         prop TabName :: "CE2 Space"
  1369.         prop Set :: (self.RENEN2_SETUP = $1, self.CESEC2_VALUE = self.CESEC2_VALUE_update(), "ok")
  1370.     }
  1371.     inst SNCCLK2_SETUP :: "Sync. to ECLKOUT1" { 
  1372.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1373.         prop Enum :: "Sync. to ECLKOUT1,Sync. to ECLKOUT2"
  1374.         prop Label :: "Synchronization Clock (SNCCLK)"
  1375.         prop JSName :: "emifaCesec2Sncclk"
  1376.         prop Visible :: 1
  1377.         prop Writable :: (if (CSL.EMIFA_SUPPORT) {1} else {0})
  1378.         prop NoGen :: 1
  1379.         prop TabName :: "CE2 Space"
  1380.         prop Set :: (self.SNCCLK2_SETUP = $1, self.CESEC2_VALUE = self.CESEC2_VALUE_update(), "ok")
  1381.     }
  1382.     inst SYNCRL3_SETUP :: "2 cycles" { 
  1383.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1384.         prop Enum :: "0 cycle,1 cycle,2 cycles,3 cycles"
  1385.         prop Label :: "Sync. interf. data read latency (SYNCRL)"
  1386.         prop JSName :: "emifaCesec3Syncrl"
  1387.         prop Visible :: 1
  1388.         prop Writable :: (if (CSL.EMIFA_SUPPORT) {1} else {0})
  1389.         prop NoGen :: 1
  1390.         prop TabName :: "CE3 Space"
  1391.         prop Set :: (self.SYNCRL3_SETUP = $1, self.CESEC3_VALUE = self.CESEC3_VALUE_update(), "ok")
  1392.     }
  1393.     inst SYNCWL3_SETUP :: "0 cycle" { 
  1394.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1395.         prop Enum :: "0 cycle,1 cycle,2 cycles,3 cycles"
  1396.         prop Label :: "Sync. interf. data write latency (SYNCWL)"
  1397.         prop JSName :: "emifaCesec3Syncwl"
  1398.         prop Visible :: 1
  1399.         prop Writable :: (if (CSL.EMIFA_SUPPORT) {1} else {0})
  1400.         prop NoGen :: 1
  1401.         prop TabName :: "CE3 Space"
  1402.         prop Set :: (self.SYNCWL3_SETUP = $1, self.CESEC3_VALUE = self.CESEC3_VALUE_update(), "ok")
  1403.     }
  1404.     inst CEEXT3_SETUP :: "Inactive" { 
  1405.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1406.         prop Enum :: "Inactive,Active"
  1407.         prop Label :: "CE Extension Register (CEEXT)"
  1408.         prop JSName :: "emifaCesec3Ceext"
  1409.         prop Visible :: 1
  1410.         prop Writable :: (if (CSL.EMIFA_SUPPORT) {1} else {0})
  1411.         prop NoGen :: 1
  1412.         prop TabName :: "CE3 Space"
  1413.         prop Set :: (self.CEEXT3_SETUP = $1, self.CESEC3_VALUE = self.CESEC3_VALUE_update(), "ok")
  1414.     }
  1415.     inst RENEN3_SETUP :: "ADS Mode" { 
  1416.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1417.         prop Enum :: "ADS Mode,Read Enable Mode"
  1418.         prop Label :: "Read Enable Enable (RENEN)"
  1419.         prop JSName :: "emifaCesec3Renen"
  1420.         prop Visible :: 1
  1421.         prop Writable :: (if (CSL.EMIFA_SUPPORT) {1} else {0})
  1422.         prop NoGen :: 1
  1423.         prop TabName :: "CE3 Space"
  1424.         prop Set :: (self.RENEN3_SETUP = $1, self.CESEC3_VALUE = self.CESEC3_VALUE_update(), "ok")
  1425.     }
  1426.     inst SNCCLK3_SETUP :: "Sync. to ECLKOUT1" { 
  1427.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1428.         prop Enum :: "Sync. to ECLKOUT1,Sync. to ECLKOUT2"
  1429.         prop Label :: "Synchronization Clock (SNCCLK)"
  1430.         prop JSName :: "emifaCesec3Sncclk"
  1431.         prop Visible :: 1
  1432.         prop Writable :: (if (CSL.EMIFA_SUPPORT) {1} else {0})
  1433.         prop NoGen :: 1
  1434.         prop TabName :: "CE3 Space"
  1435.         prop Set :: (self.SNCCLK3_SETUP = $1, self.CESEC3_VALUE = self.CESEC3_VALUE_update(), "ok")
  1436.     }
  1437.     inst TRC_SETUP :: 15 { 
  1438.         prop Label :: "TRC = trc/(eclkout1 period-1) (TRC) "
  1439.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1440.         prop Style :: 0x01 | 0x02
  1441.         prop JSName :: "emifaSdctlTrc"
  1442.         prop Visible :: 1
  1443.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1444.         prop NoGen :: 1
  1445.         prop TabName :: "SDRAM Control"
  1446.         prop Set :: (if ($1 < 0 || $1 > 15) {self.error("Minimum TRC = 0 - Maximum TRC = 15 ")} else {self.TRC_SETUP = $1, self.SDCTL_VALUE = self.SDCTL_VALUE_update(), "ok"})
  1447.     }
  1448.     inst TRP_SETUP :: 8 { 
  1449.         prop Label :: "TRP = trp/(eclkout1 period-1) (TRP) "
  1450.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1451.         prop Style :: 0x01 | 0x02
  1452.         prop JSName :: "emifaSdctlTrp"
  1453.         prop Visible :: 1
  1454.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1455.         prop NoGen :: 1
  1456.         prop TabName :: "SDRAM Control"
  1457.         prop Set :: (if ($1 < 0 || $1 > 15) {self.error("Minimum TRP = 0 - Maximum TRP= 15 ")} else {self.TRP_SETUP = $1, self.SDCTL_VALUE = self.SDCTL_VALUE_update(), "ok"})
  1458.     }
  1459.     inst TRCD_SETUP :: 4 { 
  1460.         prop Label :: "TRCD = trcd/(eclkout1 period-1) (TRCD) "
  1461.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1462.         prop Style :: 0x01 | 0x02
  1463.         prop JSName :: "emifaSdctlTrcd"
  1464.         prop Visible :: 1
  1465.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1466.         prop NoGen :: 1
  1467.         prop TabName :: "SDRAM Control"
  1468.         prop Set :: (if ($1 < 0 || $1 > 15) {self.error("Minimum TRCD = 0 - Maximum TRCD= 15 ")} else {self.TRCD_SETUP = $1, self.SDCTL_VALUE = self.SDCTL_VALUE_update(), "ok"})
  1469.     }
  1470.     inst INIT_SETUP :: "Initialize" { 
  1471.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1472.         prop Enum :: "Initialize,No effect"
  1473.         prop Label :: "Initialization of all SDRAMs (INIT)"
  1474.         prop JSName :: "emifaSdctlInit"
  1475.         prop Visible :: 1
  1476.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1477.         prop NoGen :: 1
  1478.         prop TabName :: "SDRAM Control"
  1479.         prop Set :: (self.INIT_SETUP = $1, self.SDCTL_VALUE = self.SDCTL_VALUE_update(), "ok")
  1480.     }
  1481.     inst RFEN_SETUP :: "Enable" { 
  1482.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1483.         prop Enum :: "Enable,Disable"
  1484.         prop Label :: "SDRAM Refresh Enable (RFEN)"
  1485.         prop JSName :: "emifaSdctlRfen"
  1486.         prop Visible :: 1
  1487.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1488.         prop NoGen :: 1
  1489.         prop TabName :: "SDRAM Control"
  1490.         prop Set :: (self.RFEN_SETUP = $1, self.SDCTL_VALUE = self.SDCTL_VALUE_update(), "ok")
  1491.     }
  1492.     inst SDCSZ_SETUP :: " 9 addresses" { 
  1493.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1494.         prop Enum :: " 9 addresses, 8 addresses,10 addresses"
  1495.         prop Label :: "Column Size (SDCSZ)"
  1496.         prop JSName :: "emifaSdctlSdcsz"
  1497.         prop Visible :: 1
  1498.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1499.         prop NoGen :: 1
  1500.         prop TabName :: "SDRAM Control"
  1501.         prop Set :: (self.SDCSZ_SETUP = $1, self.SDCTL_VALUE = self.SDCTL_VALUE_update(), "ok")
  1502.     }
  1503.     inst SDRSZ_SETUP :: "11 addresses" { 
  1504.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1505.         prop Enum :: "11 addresses,12 addresses,13 addresses"
  1506.         prop Label :: "Row Size (SDRSZ)"
  1507.         prop JSName :: "emifaSdctlSdrsz"
  1508.         prop Visible :: 1
  1509.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1510.         prop NoGen :: 1
  1511.         prop TabName :: "SDRAM Control"
  1512.         prop Set :: (self.SDRSZ_SETUP = $1, self.SDCTL_VALUE = self.SDCTL_VALUE_update(), "ok")
  1513.     }
  1514.     inst SDBSZ_SETUP :: "Two banks" { 
  1515.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1516.         prop Enum :: "Two banks,Four banks"
  1517.         prop Label :: "Bank Size (SDBSZ)"
  1518.         prop JSName :: "emifaSdctlSdbsz"
  1519.         prop Visible :: 1
  1520.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1521.         prop NoGen :: 1
  1522.         prop TabName :: "SDRAM Control"
  1523.         prop Set :: (self.SDBSZ_SETUP = $1, self.SDCTL_VALUE = self.SDCTL_VALUE_update(), "ok")
  1524.     }
  1525.     inst SLFRFR_SETUP :: "Disable" { 
  1526.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1527.         prop Enum :: "Disable,Enable"
  1528.         prop Label :: "Self-refresh mode(SLFRFR)"
  1529.         prop JSName :: "emifaSdctlSlfrfr"
  1530.         prop Visible :: 1
  1531.         prop Writable :: if ((CSL.EMIFA_SUPPORT)) {1} else {0}
  1532.         prop NoGen :: 1
  1533.         prop TabName :: "SDRAM Control"
  1534.         prop Set :: (self.SLFRFR_SETUP = $1, self.SDCTL_VALUE = self.SDCTL_VALUE_update(), "ok")
  1535.     }
  1536.     inst PERIOD_SETUP2 :: 1500 { 
  1537.         prop Label :: "Refresh Period (ECLKOU1 cycles)"
  1538.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1539.         prop Style :: 0x01 | 0x02
  1540.         prop JSName :: "emifaSdtimEclkPeriod"
  1541.         prop Visible :: 1
  1542.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1543.         prop NoGen :: 1
  1544.         prop TabName :: "SDRAM Control"
  1545.         prop Set :: (if ($1 < 1 || $1 > 4096) {self.error("1 cyc. < PERIOD < 4096 cyc. ")} else {self.PERIOD_SETUP2 = $1, self.SDTIM_VALUE = self.SDTIM_VALUE_update(), "ok"})
  1546.     }
  1547.     inst XRFR_SETUP :: 1 { 
  1548.         prop Label :: "Extra Refreshes Ctrl. (XRFR)"
  1549.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1550.         prop Style :: 0x01 | 0x02
  1551.         prop JSName :: "emifaSdctlXrfr"
  1552.         prop Visible :: 1
  1553.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1554.         prop NoGen :: 1
  1555.         prop TabName :: "SDRAM Control"
  1556.         prop Set :: (if ($1 < 1 || $1 > 4) {self.error("1 < Extra refreshes < 4 ")} else {self.XRFR_SETUP = $1, self.SDTIM_VALUE = self.SDTIM_VALUE_update(), "ok"})
  1557.     }
  1558.     inst TCL_SETUP :: 3 { 
  1559.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1560.         prop Label :: "CAS Latency (TCL)"
  1561.         prop Style :: 0x01 | 0x02
  1562.         prop JSName :: "emifaSdextTcl"
  1563.         prop Visible :: 1
  1564.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1565.         prop NoGen :: 1
  1566.         prop TabName :: "SDRAM More Opt."
  1567.         prop Set :: (if ($1 < 2 || $1 > 3) {self.error("TCL : 2 or 3 ECLKOU1 cycles ")} else {self.TCL_SETUP = $1, self.SDEXT_VALUE = self.SDEXT_VALUE_update(), "ok"})
  1568.     }
  1569.     inst TRAS_SETUP :: 8 { 
  1570.         prop Label :: "tras = TRAS + 1 (ECLKOU1 cyc.)"
  1571.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1572.         prop Style :: 0x01 | 0x02
  1573.         prop JSName :: "emifaSdextTras"
  1574.         prop Visible :: 1
  1575.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1576.         prop NoGen :: 1
  1577.         prop TabName :: "SDRAM More Opt."
  1578.         prop Set :: (if ($1 < 1 || $1 > 8) {self.error("1 ECLKOU1 cycle < tras < 8 ECLKOU1 cycles ")} else {self.TRAS_SETUP = $1, self.SDEXT_VALUE = self.SDEXT_VALUE_update(), "ok"})
  1579.     }
  1580.     inst TRRD_SETUP :: 3 { 
  1581.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1582.         prop Style :: 0x01 | 0x02
  1583.         prop Label :: "trrd = TRRD (2 or 3 ECLKOU1 cyc.)"
  1584.         prop JSName :: "emifaSdextTrrd"
  1585.         prop Visible :: 1
  1586.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1587.         prop NoGen :: 1
  1588.         prop TabName :: "SDRAM More Opt."
  1589.         prop Set :: (if ($1 < 2 || $1 > 3) {self.error("TRRD : 2 or 3 ECLKOU1 cycles ")} else {self.TRRD_SETUP = $1, self.SDEXT_VALUE = self.SDEXT_VALUE_update(), "ok"})
  1590.     }
  1591.     inst TWR_SETUP :: 2 { 
  1592.         prop Label :: "twr  = TWR + 1 (ECLKOU1 cyc.)"
  1593.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1594.         prop Style :: 0x01 | 0x02
  1595.         prop JSName :: "emifaSdextTwr"
  1596.         prop Visible :: 1
  1597.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1598.         prop NoGen :: 1
  1599.         prop TabName :: "SDRAM More Opt."
  1600.         prop Set :: (if ($1 < 1 || $1 > 4) {self.error("1 ECLKOU1 cycle < twr < 4 ECLKOU1 cycles ")} else {self.TWR_SETUP = $1, self.SDEXT_VALUE = self.SDEXT_VALUE_update(), "ok"})
  1601.     }
  1602.     inst THZP_SETUP :: 3 { 
  1603.         prop Label :: "thzp = THZP + 1 (ECLKOU1 cyc.)"
  1604.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1605.         prop Style :: 0x01 | 0x02
  1606.         prop JSName :: "emifaSdextThzp"
  1607.         prop Visible :: 1
  1608.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1609.         prop NoGen :: 1
  1610.         prop TabName :: "SDRAM More Opt."
  1611.         prop Set :: (if ($1 < 1 || $1 > 4) {self.error("1 ECLKOU1 cycle < thzp < 4 ECLKOU1 cycles ")} else {self.THZP_SETUP = $1, self.SDEXT_VALUE = self.SDEXT_VALUE_update(), "ok"})
  1612.     }
  1613.     inst RD2RD_SETUP :: 2 { 
  1614.         prop Label :: "READ-To-READ (ECLKOU1 cyc.)"
  1615.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1616.         prop Style :: 0x01 | 0x02
  1617.         prop JSName :: "emifaSdextRd2rd"
  1618.         prop Visible :: 1
  1619.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1620.         prop NoGen :: 1
  1621.         prop TabName :: "SDRAM More Opt."
  1622.         prop Set :: (if ($1 < 1 || $1 > 2) {self.error("1 < # of ECLKOU1 cycles < 2  ")} else {self.RD2RD_SETUP = $1, self.SDEXT_VALUE = self.SDEXT_VALUE_update(), "ok"})
  1623.     }
  1624.     inst RD2DEAC_SETUP :: 4 { 
  1625.         prop Label :: "READ-To-DEAC/DEAB (ECLKOU1 cyc.)"
  1626.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1627.         prop Style :: 0x01 | 0x02
  1628.         prop JSName :: "emifaSdextRd2deac"
  1629.         prop Visible :: 1
  1630.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1631.         prop NoGen :: 1
  1632.         prop TabName :: "SDRAM More Opt."
  1633.         prop Set :: (if ($1 < 1 || $1 > 4) {self.error("1 < # of ECLKOU1 cycles < 4  ")} else {self.RD2DEAC_SETUP = $1, self.SDEXT_VALUE = self.SDEXT_VALUE_update(), "ok"})
  1634.     }
  1635.     inst RD2WR_SETUP :: 6 { 
  1636.         prop Label :: "READ-To-WRITE (ECLKOU1 cyc.)"
  1637.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1638.         prop Style :: 0x01 | 0x02
  1639.         prop JSName :: "emifaSdextRd2wr"
  1640.         prop Visible :: 1
  1641.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1642.         prop NoGen :: 1
  1643.         prop TabName :: "SDRAM More Opt."
  1644.         prop Set :: (if ($1 < 1 || $1 > 8) {self.error("1 < # of ECLKOU1 cycles < 8  ")} else {self.RD2WR_SETUP = $1, self.SDEXT_VALUE = self.SDEXT_VALUE_update(), "ok"})
  1645.     }
  1646.     inst R2WDQM_SETUP :: 3 { 
  1647.         prop Label :: "READ-To-WRITE with Interrupt (BEx cyc.)"
  1648.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1649.         prop Style :: 0x01 | 0x02
  1650.         prop JSName :: "emifaSdextR2wdqm"
  1651.         prop Visible :: 1
  1652.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1653.         prop NoGen :: 1
  1654.         prop TabName :: "SDRAM More Opt."
  1655.         prop Set :: (if ($1 < 1 || $1 > 4) {self.error("1 < # of Bex cycles < 4  ")} else {self.R2WDQM_SETUP = $1, self.SDEXT_VALUE = self.SDEXT_VALUE_update(), "ok"})
  1656.     }
  1657.     inst WR2WR_SETUP :: 2 { 
  1658.         prop Label :: "WRITE-To-WRITE (ECLKOU1 cyc.)"
  1659.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1660.         prop Style :: 0x01 | 0x02
  1661.         prop JSName :: "emifaSdextWr2wr"
  1662.         prop Visible :: 1
  1663.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1664.         prop NoGen :: 1
  1665.         prop TabName :: "SDRAM More Opt."
  1666.         prop Set :: (if ($1 < 1 || $1 > 2) {self.error("1 < # of ECLKOU1 cycles < 2  ")} else {self.WR2WR_SETUP = $1, self.SDEXT_VALUE = self.SDEXT_VALUE_update(), "ok"})
  1667.     }
  1668.     inst WR2DEAC_SETUP :: 2 { 
  1669.         prop Label :: "WRITE-To-DEAC/DEAB (ECLKOU1 cyc.)"
  1670.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1671.         prop Style :: 0x01 | 0x02
  1672.         prop JSName :: "emifaSdextWr2deac"
  1673.         prop Visible :: 1
  1674.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1675.         prop NoGen :: 1
  1676.         prop TabName :: "SDRAM More Opt."
  1677.         prop Set :: (if ($1 < 1 || $1 > 4) {self.error("1 < # of ECLKOU1 cycles < 4  ")} else {self.WR2DEAC_SETUP = $1, self.SDEXT_VALUE = self.SDEXT_VALUE_update(), "ok"})
  1678.     }
  1679.     inst WR2RD_SETUP :: 2 { 
  1680.         prop Label :: "WRITE-To-READ (# of ECLKOU1 cyc.)"
  1681.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1682.         prop Style :: 0x01 | 0x02
  1683.         prop JSName :: "emifaSdextWr2rd"
  1684.         prop Visible :: 1
  1685.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1686.         prop NoGen :: 1
  1687.         prop TabName :: "SDRAM More Opt."
  1688.         prop Set :: (if ($1 < 1 || $1 > 2) {self.error("1 < # of ECLKOU1 cycles < 2  ")} else {self.WR2RD_SETUP = $1, self.SDEXT_VALUE = self.SDEXT_VALUE_update(), "ok"})
  1689.     }
  1690.     inst GBLCTL_VALUE :: self.GBLCTL_VALUE_update() { 
  1691.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  1692.         prop Label :: "Global Control Reg. (GBLCTL) "
  1693.         prop Format :: "0x%08X"
  1694.         prop JSName :: "emifaGblctl"
  1695.         prop Visible :: 1
  1696.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1697.         prop NoGen :: 0
  1698.         prop cGen :: 1
  1699.         prop cType :: "Uint32"
  1700.         prop TabName :: "Advanced"
  1701.         prop Set :: ($a = $1 & 0xFFF00000, $b = $1 & 0x0000C000, $c = $1 & 0x00001000, $d = $1 & 0x00000003, $e = $1 & 0x000C0000, if ($a != 0) {self.error("Bit field (31..20) is reserved")} else {if ($b != 0) {self.error("Bit field (15..14) is reserved")} else {if ($c != 0) {self.error("Bit field 12 is reserved")} else {if ($d != 0) {self.error("Bit field (1..0) is reserved")} else {if ($e == 0x000C0000) {self.error("Invalid input for EK2RATE bit[19:18]")} else {self.GBLCTL_VALUE = $1 | 0x0000004, self.GBLCTL_SETUP_update($1 | 0x0000004), "ok"}}}}})
  1702.     }
  1703.     inst CECTL0_VALUE :: self.CECTL0_VALUE_update() { 
  1704.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  1705.         prop Label :: "CE0 Space Control Reg. (CECTL0) "
  1706.         prop Format :: "0x%08X"
  1707.         prop JSName :: "emifaCectl0"
  1708.         prop Visible :: 1
  1709.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1710.         prop NoGen :: 0
  1711.         prop cGen :: 1
  1712.         prop cType :: "Uint32"
  1713.         prop TabName :: "Advanced"
  1714.         prop Set :: ($a = $1 & 0x000000F0, $b = $1 & 0x0000C000, if ($a == 0x00000070 || $a == 0x000000F0 || $a == 0x00000050 || $a == 0x00000060) {self.error("Undefined Memory type for CE Spaces - See CEx Space Pages")} else {if ($b == 0x00000000) {self.error("Minimum: 1 ECLKOUT cycle - Maximum : 3 ECLKOUT cycles")} else {self.CECTL0_VALUE = $1, self.CECTL0_SETUP_update($1), "ok"}})
  1715.     }
  1716.     inst CECTL1_VALUE :: self.CECTL1_VALUE_update() { 
  1717.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  1718.         prop Label :: "CE1 Space Control Reg. (CECTL1) "
  1719.         prop Format :: "0x%08X"
  1720.         prop JSName :: "emifaCectl1"
  1721.         prop Visible :: 1
  1722.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1723.         prop NoGen :: 0
  1724.         prop cGen :: 1
  1725.         prop cType :: "Uint32"
  1726.         prop TabName :: "Advanced"
  1727.         prop Set :: ($a = $1 & 0x000000F0, $b = $1 & 0x0000C000, if ($a == 0x00000070 || $a == 0x000000F0 || $a == 0x00000050 || $a == 0x00000060) {self.error("Undefined Memory type for CE Spaces - See CEx Space Pages")} else {if ($b == 0x00000000) {self.error("Minimum: 1 ECLKOUT cycle - Maximum : 3 ECLKOUT cycles")} else {self.CECTL1_VALUE = $1, self.CECTL1_SETUP_update($1), "ok"}})
  1728.     }
  1729.     inst CECTL2_VALUE :: self.CECTL2_VALUE_update() { 
  1730.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  1731.         prop Label :: "CE2 Space Control Reg. (CECTL2) "
  1732.         prop Format :: "0x%08X"
  1733.         prop JSName :: "emifaCectl2"
  1734.         prop Visible :: 1
  1735.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1736.         prop NoGen :: 0
  1737.         prop cGen :: 1
  1738.         prop cType :: "Uint32"
  1739.         prop TabName :: "Advanced"
  1740.         prop Set :: ($a = $1 & 0x000000F0, $b = $1 & 0x0000C000, if ($a == 0x00000070 || $a == 0x000000F0 || $a == 0x00000050 || $a == 0x00000060) {self.error("Undefined Memory type for CE Spaces - See CEx Space Pages")} else {if ($b == 0x00000000) {self.error("Minimum: 1 ECLKOUT cycle - Maximum : 3 ECLKOUT cycles")} else {self.CECTL2_VALUE = $1, self.CECTL2_SETUP_update($1), "ok"}})
  1741.     }
  1742.     inst CECTL3_VALUE :: self.CECTL3_VALUE_update() { 
  1743.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  1744.         prop Label :: "CE3 Space Control Reg. (CECTL3) "
  1745.         prop Format :: "0x%08X"
  1746.         prop JSName :: "emifaCectl3"
  1747.         prop Visible :: 1
  1748.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1749.         prop NoGen :: 0
  1750.         prop cGen :: 1
  1751.         prop cType :: "Uint32"
  1752.         prop TabName :: "Advanced"
  1753.         prop Set :: ($a = $1 & 0x000000F0, $b = $1 & 0x0000C000, if ($a == 0x00000070 || $a == 0x000000F0 || $a == 0x00000050 || $a == 0x00000060) {self.error("Undefined Memory type for CE Spaces - See CEx Space Pages")} else {if ($b == 0x00000000) {self.error("Minimum: 1 ECLKOUT cycle - Maximum : 3 ECLKOUT cycles")} else {self.CECTL3_VALUE = $1, self.CECTL3_SETUP_update($1), "ok"}})
  1754.     }
  1755.     inst SDCTL_VALUE :: self.SDCTL_VALUE_update() { 
  1756.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  1757.         prop Label :: "SDRAM Control Reg.(SDCTL) "
  1758.         prop Format :: "0x%08X"
  1759.         prop JSName :: "emifaSdctl"
  1760.         prop Visible :: 1
  1761.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1762.         prop NoGen :: 0
  1763.         prop cGen :: 1
  1764.         prop cType :: "Uint32"
  1765.         prop TabName :: "Advanced"
  1766.         prop Set :: ($a = $1 & 0x0c000000, if ($a == 0x0c000000) {self.error("Undefined Value for Column Size field SDCSZ")} else {$b = $1 & 0x30000000, if ($b == 0x30000000) {self.error("Undefined Value for Row Size field SDRSZ")} else {$c = $1 & 0x80000000, if ($c == 0x80000000) {self.error("Bit field 31 is reserved")} else {$d = $1 & 0x00000FFE, if ($d != 0) {self.error("Bit field(bit[1..11]) is reserved")} else {self.SDCTL_VALUE = $1, self.SDCTL_SETUP_update($1), "ok"}}}})
  1767.     }
  1768.     inst SDTIM_VALUE :: self.SDTIM_VALUE_update() { 
  1769.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  1770.         prop Label :: "SDRAM Timing Reg.(SDTIM) "
  1771.         prop Format :: "0x%08X"
  1772.         prop JSName :: "emifaSdtim"
  1773.         prop Visible :: 1
  1774.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1775.         prop NoGen :: 0
  1776.         prop cGen :: 1
  1777.         prop cType :: "Uint32"
  1778.         prop TabName :: "Advanced"
  1779.         prop Set :: ($a = $1 & 0x0000FFF, if ($a == 0x00000000) {self.error("1 cyc. < PERIOD < 4096 cyc. ")} else {$b = $1 & 0xFC000000, if ($b != 0) {self.error("Bit field(bit[26..31]) is reserved")} else {self.SDTIM_VALUE = $1 | 0x005dc000, self.SDTIM_SETUP_update($1 | 0x005dc000), "ok"}})
  1780.     }
  1781.     inst SDEXT_VALUE :: self.SDEXT_VALUE_update() { 
  1782.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  1783.         prop Label :: "SDRAM Extended Reg.(SDEXT) "
  1784.         prop Format :: "0x%08X"
  1785.         prop JSName :: "emifaSdext"
  1786.         prop Visible :: 1
  1787.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1788.         prop NoGen :: 0
  1789.         prop cGen :: 1
  1790.         prop cType :: "Uint32"
  1791.         prop TabName :: "Advanced"
  1792.         prop Set :: ($a = $1 & 0xFFE00000, if ($a != 0) {self.error("Bit field(bit[21..31]) is reserved")} else {self.SDEXT_VALUE = $1, self.SDEXT_SETUP_update($1), "ok"})
  1793.     }
  1794.     inst CESEC0_VALUE :: self.CESEC0_VALUE_update() { 
  1795.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  1796.         prop Label :: "CE0 Space Secondary Control Reg. (CESEC0)"
  1797.         prop Format :: "0x%08X"
  1798.         prop JSName :: "emifaCesec0"
  1799.         prop Visible :: 1
  1800.         prop Writable :: if (CSL.EMIFA_SUPPORT != 0) {1} else {0}
  1801.         prop NoGen :: 0
  1802.         prop cGen :: 1
  1803.         prop cType :: "Uint32"
  1804.         prop TabName :: "Advanced"
  1805.         prop Set :: ($a = $1 & 0xFFFFFF80, if ($a != 0) {self.error("Bit field(bit[7..31]) is reserved")} else {self.CESEC0_VALUE = $1, self.CESEC0_SETUP_update($1), "ok"})
  1806.     }
  1807.     inst CESEC1_VALUE :: self.CESEC1_VALUE_update() { 
  1808.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  1809.         prop Label :: "CE1 Space Secondary Control Reg. (CESEC1)"
  1810.         prop Format :: "0x%08X"
  1811.         prop JSName :: "emifaCesec1"
  1812.         prop Visible :: 1
  1813.         prop Writable :: if (CSL.EMIFA_SUPPORT != 0) {1} else {0}
  1814.         prop NoGen :: 0
  1815.         prop cGen :: 1
  1816.         prop cType :: "Uint32"
  1817.         prop TabName :: "Advanced"
  1818.         prop Set :: ($a = $1 & 0xFFFFFF80, if ($a != 0) {self.error("Bit field(bit[7..31]) is reserved")} else {self.CESEC1_VALUE = $1, self.CESEC1_SETUP_update($1), "ok"})
  1819.     }
  1820.     inst CESEC2_VALUE :: self.CESEC2_VALUE_update() { 
  1821.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  1822.         prop Label :: "CE2 Space Secondary Control Reg. (CESEC2)"
  1823.         prop Format :: "0x%08X"
  1824.         prop JSName :: "emifaCesec2"
  1825.         prop Visible :: 1
  1826.         prop Writable :: if (CSL.EMIFA_SUPPORT != 0) {1} else {0}
  1827.         prop NoGen :: 0
  1828.         prop cGen :: 1
  1829.         prop cType :: "Uint32"
  1830.         prop TabName :: "Advanced"
  1831.         prop Set :: ($a = $1 & 0xFFFFFF80, if ($a != 0) {self.error("Bit field(bit[7..31]) is reserved")} else {self.CESEC2_VALUE = $1, self.CESEC2_SETUP_update($1), "ok"})
  1832.     }
  1833.     inst CESEC3_VALUE :: self.CESEC3_VALUE_update() { 
  1834.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  1835.         prop Label :: "CE3 Space Secondary Control Reg. (CESEC3)"
  1836.         prop Format :: "0x%08X"
  1837.         prop JSName :: "emifaCesec3"
  1838.         prop Visible :: 1
  1839.         prop Writable :: if (CSL.EMIFA_SUPPORT != 0) {1} else {0}
  1840.         prop NoGen :: 0
  1841.         prop cGen :: 1
  1842.         prop cType :: "Uint32"
  1843.         prop TabName :: "Advanced"
  1844.         prop Set :: ($a = $1 & 0xFFFFFF80, if ($a != 0) {self.error("Bit field(bit[7..31]) is reserved")} else {self.CESEC3_VALUE = $1, self.CESEC3_SETUP_update($1), "ok"})
  1845.     }
  1846. }
  1847. type hEmifa {
  1848.     prop IsContainedIn :: EMIFAFOLDER
  1849.     prop name :: "hEmifa"
  1850.     prop Label :: "EMIF Resource Manager"
  1851.     prop JSName :: "HEMIFA"
  1852.     prop NoGen :: 1
  1853.     prop GlobalPropertyPage :: "{980E6534-6246-11d4-B5CC-0050DA2E2CC0}"
  1854.     prop InstancePropertyPage :: "{980E6535-6246-11d4-B5CC-0050DA2E2CC0}"
  1855.     prop GlobalIcon :: 163
  1856.     prop InstanceIcon :: 164
  1857.     prop GlobalHelpTopic :: (1045)
  1858.     prop cGen :: 1
  1859.     global EMIFA_INIT_ENABLE :: 0 { 
  1860.         prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
  1861.         prop Label :: "Enable Pre-Initialization"
  1862.         prop JSName :: "emifaEnablePreInit"
  1863.         prop Visible :: 1
  1864.         prop Writable :: (CSL.EMIFA_SUPPORT)
  1865.         prop NoGen :: 0
  1866.         prop Set :: ($a = 0, scan ($b; emifaCfg) {$a = $a + 1}, if ($1 == 1 && $a == 1 && self.EMIFA_INIT == EMIFA_NOTHING) {" You must create a new configuration object"} else {self.EMIFA_INIT_ENABLE = $1, if ($1 == 0) {self.EMIFA_INIT = EMIFA_NOTHING} , "ok"})
  1867.     }
  1868.     global EMIFA_INIT :: EMIFA_NOTHING { 
  1869.         prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
  1870.         prop MemberType :: emifaCfg
  1871.         prop Label :: " Pre-Initialize with"
  1872.         prop JSName :: "emifaPreInit"
  1873.         prop Visible :: 1
  1874.         prop Writable :: if (CSL.EMIFA_SUPPORT) && (self.EMIFA_INIT_ENABLE == 1) {1} else {0}
  1875.     }
  1876. }
  1877. object EMIFA_NOTHING :: emifaCfg {
  1878.     param iComment :: "<add comments here>"
  1879.     param iIsUsed :: 0
  1880.     param iId :: 0
  1881.     param iDelUser :: "USER"
  1882.     param iDelMsg :: "ok"
  1883.     param NOHOLD_SETUP :: "Enable Hold"
  1884.     param CLK4EN_SETUP :: "Enabled to clock"
  1885.     param CLK6EN_SETUP :: "Enabled to clock"
  1886.     param EK1EN_SETUP :: "Enabled to clock"
  1887.     param EK2EN_SETUP :: "Enabled to clock"
  1888.     param EK1HZ_SETUP :: "High-Z during hold"
  1889.     param EK2HZ_SETUP :: "Clock during hold"
  1890.     param EK2RATE_SETUP :: "1/4x EMIF input clock"
  1891.     param BRMODE_SETUP :: "access/refresh pending or in progress"
  1892.     param MTYPE0_SETUP :: "32-bit async. interf."
  1893.     param RDSTRB0_SETUP :: 63
  1894.     param RDSETUP0_SETUP :: 15
  1895.     param RDHLD0_SETUP :: 3
  1896.     param WRSTRB0_SETUP :: 63
  1897.     param WRSETUP0_SETUP :: 15
  1898.     param WRHLD0_SETUP :: 3
  1899.     param TA0_SETUP :: 3
  1900.     param MTYPE1_SETUP :: "32-bit async. interf."
  1901.     param RDSTRB1_SETUP :: 63
  1902.     param RDSETUP1_SETUP :: 15
  1903.     param RDHLD1_SETUP :: 3
  1904.     param WRSTRB1_SETUP :: 63
  1905.     param WRSETUP1_SETUP :: 15
  1906.     param WRHLD1_SETUP :: 3
  1907.     param TA1_SETUP :: 3
  1908.     param MTYPE2_SETUP :: "32-bit async. interf."
  1909.     param RDSTRB2_SETUP :: 63
  1910.     param RDSETUP2_SETUP :: 15
  1911.     param RDHLD2_SETUP :: 3
  1912.     param WRSTRB2_SETUP :: 63
  1913.     param WRSETUP2_SETUP :: 15
  1914.     param WRHLD2_SETUP :: 3
  1915.     param TA2_SETUP :: 3
  1916.     param MTYPE3_SETUP :: "32-bit async. interf."
  1917.     param RDSTRB3_SETUP :: 63
  1918.     param RDSETUP3_SETUP :: 15
  1919.     param RDHLD3_SETUP :: 3
  1920.     param WRSTRB3_SETUP :: 63
  1921.     param WRSETUP3_SETUP :: 15
  1922.     param WRHLD3_SETUP :: 3
  1923.     param TA3_SETUP :: 3
  1924.     param SYNCRL0_SETUP :: "2 cycles"
  1925.     param SYNCWL0_SETUP :: "0 cycle"
  1926.     param CEEXT0_SETUP :: "Inactive"
  1927.     param RENEN0_SETUP :: "ADS Mode"
  1928.     param SNCCLK0_SETUP :: "Sync. to ECLKOUT1"
  1929.     param SYNCRL1_SETUP :: "2 cycles"
  1930.     param SYNCWL1_SETUP :: "0 cycle"
  1931.     param CEEXT1_SETUP :: "Inactive"
  1932.     param RENEN1_SETUP :: "ADS Mode"
  1933.     param SNCCLK1_SETUP :: "Sync. to ECLKOUT1"
  1934.     param SYNCRL2_SETUP :: "2 cycles"
  1935.     param SYNCWL2_SETUP :: "0 cycle"
  1936.     param CEEXT2_SETUP :: "Inactive"
  1937.     param RENEN2_SETUP :: "ADS Mode"
  1938.     param SNCCLK2_SETUP :: "Sync. to ECLKOUT1"
  1939.     param SYNCRL3_SETUP :: "2 cycles"
  1940.     param SYNCWL3_SETUP :: "0 cycle"
  1941.     param CEEXT3_SETUP :: "Inactive"
  1942.     param RENEN3_SETUP :: "ADS Mode"
  1943.     param SNCCLK3_SETUP :: "Sync. to ECLKOUT1"
  1944.     param TRC_SETUP :: 15
  1945.     param TRP_SETUP :: 8
  1946.     param TRCD_SETUP :: 4
  1947.     param INIT_SETUP :: "Initialize"
  1948.     param RFEN_SETUP :: "Enable"
  1949.     param SDCSZ_SETUP :: " 9 addresses"
  1950.     param SDRSZ_SETUP :: "11 addresses"
  1951.     param SDBSZ_SETUP :: "Two banks"
  1952.     param SLFRFR_SETUP :: "Disable"
  1953.     param PERIOD_SETUP2 :: 1500
  1954.     param XRFR_SETUP :: 1
  1955.     param TCL_SETUP :: 3
  1956.     param TRAS_SETUP :: 8
  1957.     param TRRD_SETUP :: 3
  1958.     param TWR_SETUP :: 2
  1959.     param THZP_SETUP :: 3
  1960.     param RD2RD_SETUP :: 2
  1961.     param RD2DEAC_SETUP :: 4
  1962.     param RD2WR_SETUP :: 6
  1963.     param R2WDQM_SETUP :: 3
  1964.     param WR2WR_SETUP :: 2
  1965.     param WR2DEAC_SETUP :: 2
  1966.     param WR2RD_SETUP :: 2
  1967.     param GBLCTL_VALUE :: 598140
  1968.     param CECTL0_VALUE :: -221
  1969.     param CECTL1_VALUE :: -221
  1970.     param CECTL2_VALUE :: -221
  1971.     param CECTL3_VALUE :: -221
  1972.     param SDCTL_VALUE :: 55111680
  1973.     param SDTIM_VALUE :: 6145500
  1974.     param SDEXT_VALUE :: 1531711
  1975.     param CESEC0_VALUE :: 2
  1976.     param CESEC1_VALUE :: 2
  1977.     param CESEC2_VALUE :: 2
  1978.     param CESEC3_VALUE :: 2
  1979. }
  1980. type EMIFBFOLDER {
  1981.     isa ModuleFolder
  1982.     prop IsContainedIn :: CSL
  1983.     prop name :: "EMIFB"
  1984.     prop Label :: "EMIFB - External Memory Interface B (64x devices only)"
  1985.     prop NoGen :: 1
  1986.     prop GlobalPropertyPage :: "{980E6530-6246-11d4-B5CC-0050DA2E2CC0}"
  1987.     prop InstancePropertyPage :: "{980E6531-6246-11d4-B5CC-0050DA2E2CC0}"
  1988.     prop GlobalIcon :: 163
  1989.     prop InstanceIcon :: 164
  1990.     prop GlobalHelpTopic :: (1043)
  1991.     global gUser :: "USER" { 
  1992.         prop Visible :: 0
  1993.         prop Writable :: 0
  1994.         prop NoGen :: 1
  1995.     }
  1996.     global gSetOf :: 0 { 
  1997.         prop Visible :: 0
  1998.         prop Writable :: 0
  1999.         prop NoGen :: 1
  2000.     }
  2001.     global gNumOf :: 0 { 
  2002.         prop Visible :: 0
  2003.         prop Writable :: 0
  2004.         prop NoGen :: 1
  2005.     }
  2006.     global gDirty :: 0 { 
  2007.         prop Visible :: 0
  2008.         prop Writable :: 0
  2009.         prop NoGen :: 1
  2010.     }
  2011.     global gInitFlag :: 1 { 
  2012.         prop Visible :: 0
  2013.         prop Writable :: 0
  2014.         prop NoGen :: 1
  2015.     }
  2016.     global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { 
  2017.         prop Visible :: 0
  2018.         prop Writable :: 0
  2019.         prop NoGen :: 1
  2020.     }
  2021. }
  2022. type emifbCfg {
  2023.     isa ObjectMgr
  2024.     prop Name :: "emifbCfg"
  2025.     prop Label :: "EMIFB Configuration Manager"
  2026.     prop JSName :: "EMIFB"
  2027.     prop IsContainedIn :: EMIFBFOLDER
  2028.     prop NoGen :: 1
  2029.     prop maxObjs :: (32767)
  2030.     prop GlobalPropertyPage :: "{980E6532-6246-11d4-B5CC-0050DA2E2CC0}"
  2031.     prop InstancePropertyPage :: "{980E6533-6246-11d4-B5CC-0050DA2E2CC0}"
  2032.     prop GlobalIcon :: 163
  2033.     prop InstanceIcon :: 164
  2034.     prop GlobalHelpTopic :: (1044)
  2035.     prop InstanceHelpTopic :: (1044)
  2036.     prop cGen :: CSL.EMIFB_SUPPORT
  2037.     prop cStruct :: 1
  2038.     prop cStructType :: "EMIFB_Config"
  2039.     prop cHeaderName :: if self.gNumOf > 0 {"csl_emifb.h"} else {""}
  2040.     prop cStructQual :: "far"
  2041.     prop cStructName :: self
  2042.     prop cConfigName :: "EMIFB_config"
  2043.     prop localDelete :: (self.myDelete)
  2044.     prop myDelete :: ($a = 0, scan ($b; emifbCfg) {$a = $a + 1}, if ($a == 2) {hEmifb.EMIFB_INIT_ENABLE = 0} , "ok")
  2045.     prop NOHOLD_GBLCTL :: (if (self.NOHOLD_SETUP == "Disable Hold") {0x00000080} else {0x00000000})
  2046.     prop CLK4EN_GBLCTL :: (if (self.CLK4EN_SETUP == "Held high") {0x00000000} else {0x00000010})
  2047.     prop CLK6EN_GBLCTL :: (if (self.CLK6EN_SETUP == "Held high") {0x00000000} else {0x00000008})
  2048.     prop EK1EN_GBLCTL :: (if (self.EK1EN_SETUP == "Held low") {0x00000000} else {0x00000020})
  2049.     prop EK2EN_GBLCTL :: (if (self.EK2EN_SETUP == "Held low") {0x00000000} else {0x00010000})
  2050.     prop EK1HZ_GBLCTL :: (if (self.EK1HZ_SETUP == "Clock during hold") {0x00000000} else {0x00000040})
  2051.     prop EK2HZ_GBLCTL :: (if (self.EK2HZ_SETUP == "Clock during hold") {0x00000000} else {0x00020000})
  2052.     prop EK2RATE_GBLCTL :: (if (self.EK2RATE_SETUP == "1x EMIF input clock") {0x00000000} else {if (self.EK2RATE_SETUP == "1/2x EMIF input clock") {0x00040000} else {if (self.EK2RATE_SETUP == "1/4x EMIF input clock") {0x00080000} }})
  2053.     prop BRMODE_GBLCTL :: (if (self.BRMODE_SETUP == "access pending or in progress") {0x00000000} else {if (self.BRMODE_SETUP == "access/refresh pending or in progress") {0x00002000} })
  2054.     prop MTYPE0_CECTL0 :: (if (self.MTYPE0_SETUP == "  8-bit async. interf.") {0x00000000} else {if (self.MTYPE0_SETUP == "  8-bit SDRAM") {0x00000080} else {if (self.MTYPE0_SETUP == "  8-bit prog. sync. mem") {0x000000a0} else {if (self.MTYPE0_SETUP == "16-bit async. interf.") {0x00000010} else {if (self.MTYPE0_SETUP == "16-bit SDRAM") {0x00000090} else {if (self.MTYPE0_SETUP == "16-bit prog. sync. mem") {0x000000b0} }}}}})
  2055.     prop RDSTRB0_CECTL0 :: (((self.RDSTRB0_SETUP) << 8))
  2056.     prop RDSETUP0_CECTL0 :: (((self.RDSETUP0_SETUP) << 16))
  2057.     prop RDHLD0_CECTL0 :: ((self.RDHLD0_SETUP))
  2058.     prop WRSTRB0_CECTL0 :: (((self.WRSTRB0_SETUP) << 22))
  2059.     prop WRSETUP0_CECTL0 :: (((self.WRSETUP0_SETUP) << 28))
  2060.     prop WRHLD0_CECTL0 :: (if (self.WRHLD0_SETUP > 3) {((self.WRHLD0_SETUP - 4) << 20)} else {((self.WRHLD0_SETUP << 20))})
  2061.     prop WRHLDMSB0_CECTL0 :: (if (self.WRHLD0_SETUP > 3) {0x00000008} else {0x00000000})
  2062.     prop TA0_CECTL0 :: ((self.TA0_SETUP << 14))
  2063.     prop MTYPE1_CECTL1 :: (if (self.MTYPE1_SETUP == "  8-bit async. interf.") {0x00000000} else {if (self.MTYPE1_SETUP == "  8-bit SDRAM") {0x00000080} else {if (self.MTYPE1_SETUP == "  8-bit prog. sync. mem") {0x000000a0} else {if (self.MTYPE1_SETUP == "16-bit async. interf.") {0x00000010} else {if (self.MTYPE1_SETUP == "16-bit SDRAM") {0x00000090} else {if (self.MTYPE1_SETUP == "16-bit prog. sync. mem") {0x000000b0} }}}}})
  2064.     prop RDSTRB1_CECTL1 :: (((self.RDSTRB1_SETUP) << 8))
  2065.     prop RDSETUP1_CECTL1 :: (((self.RDSETUP1_SETUP) << 16))
  2066.     prop RDHLD1_CECTL1 :: ((self.RDHLD1_SETUP))
  2067.     prop WRSTRB1_CECTL1 :: (((self.WRSTRB1_SETUP) << 22))
  2068.     prop WRSETUP1_CECTL1 :: (((self.WRSETUP1_SETUP) << 28))
  2069.     prop WRHLD1_CECTL1 :: (if (self.WRHLD1_SETUP > 3) {((self.WRHLD1_SETUP - 4) << 20)} else {((self.WRHLD1_SETUP << 20))})
  2070.     prop WRHLDMSB1_CECTL1 :: (if (self.WRHLD1_SETUP > 3) {0x00000008} else {0x00000000})
  2071.     prop TA1_CECTL1 :: ((self.TA1_SETUP << 14))
  2072.     prop MTYPE2_CECTL2 :: (if (self.MTYPE2_SETUP == "  8-bit async. interf.") {0x00000000} else {if (self.MTYPE2_SETUP == "  8-bit SDRAM") {0x00000080} else {if (self.MTYPE2_SETUP == "  8-bit prog. sync. mem") {0x000000a0} else {if (self.MTYPE2_SETUP == "16-bit async. interf.") {0x00000010} else {if (self.MTYPE2_SETUP == "16-bit SDRAM") {0x00000090} else {if (self.MTYPE2_SETUP == "16-bit prog. sync. mem") {0x000000b0} }}}}})
  2073.     prop RDSTRB2_CECTL2 :: (((self.RDSTRB2_SETUP) << 8))
  2074.     prop RDSETUP2_CECTL2 :: (((self.RDSETUP2_SETUP) << 16))
  2075.     prop RDHLD2_CECTL2 :: ((self.RDHLD2_SETUP))
  2076.     prop WRSTRB2_CECTL2 :: (((self.WRSTRB2_SETUP) << 22))
  2077.     prop WRSETUP2_CECTL2 :: (((self.WRSETUP2_SETUP) << 28))
  2078.     prop WRHLD2_CECTL2 :: (if (self.WRHLD2_SETUP > 3) {((self.WRHLD2_SETUP - 4) << 20)} else {((self.WRHLD2_SETUP << 20))})
  2079.     prop WRHLDMSB2_CECTL2 :: (if (self.WRHLD2_SETUP > 3) {0x00000008} else {0x00000000})
  2080.     prop TA2_CECTL2 :: ((self.TA2_SETUP << 14))
  2081.     prop MTYPE3_CECTL3 :: (if (self.MTYPE3_SETUP == "  8-bit async. interf.") {0x00000000} else {if (self.MTYPE3_SETUP == "  8-bit SDRAM") {0x00000080} else {if (self.MTYPE3_SETUP == "  8-bit prog. sync. mem") {0x000000a0} else {if (self.MTYPE3_SETUP == "16-bit async. interf.") {0x00000010} else {if (self.MTYPE3_SETUP == "16-bit SDRAM") {0x00000090} else {if (self.MTYPE3_SETUP == "16-bit prog. sync. mem") {0x000000b0} }}}}})
  2082.     prop RDSTRB3_CECTL3 :: (((self.RDSTRB3_SETUP) << 8))
  2083.     prop RDSETUP3_CECTL3 :: (((self.RDSETUP3_SETUP) << 16))
  2084.     prop RDHLD3_CECTL3 :: ((self.RDHLD3_SETUP))
  2085.     prop WRSTRB3_CECTL3 :: (((self.WRSTRB3_SETUP) << 22))
  2086.     prop WRSETUP3_CECTL3 :: (((self.WRSETUP3_SETUP) << 28))
  2087.     prop WRHLD3_CECTL3 :: (if (self.WRHLD3_SETUP > 3) {((self.WRHLD3_SETUP - 4) << 20)} else {((self.WRHLD3_SETUP << 20))})
  2088.     prop WRHLDMSB3_CECTL3 :: (if (self.WRHLD3_SETUP > 3) {0x00000008} else {0x00000000})
  2089.     prop TA3_CECTL3 :: ((self.TA3_SETUP << 14))
  2090.     prop SYNCRL0_CESEC0 :: (if (self.SYNCRL0_SETUP == "0 cycle") {0x00000000} else {if (self.SYNCRL0_SETUP == "1 cycle") {0x00000001} else {if (self.SYNCRL0_SETUP == "2 cycles") {0x00000002} else {0x00000003}}})
  2091.     prop SYNCWL0_CESEC0 :: (if (self.SYNCWL0_SETUP == "0 cycle") {0x00000000} else {if (self.SYNCWL0_SETUP == "1 cycle") {0x00000004} else {if (self.SYNCWL0_SETUP == "2 cycles") {0x00000008} else {0x0000000c}}})
  2092.     prop CEEXT0_CESEC0 :: (if (self.CEEXT0_SETUP == "Inactive") {0x00000000} else {0x0000010})
  2093.     prop RENEN0_CESEC0 :: (if (self.RENEN0_SETUP == "ADS Mode") {0x00000000} else {0x0000020})
  2094.     prop SNCCLK0_CESEC0 :: (if (self.SNCCLK0_SETUP == "Sync. to ECLKOUT1") {0x00000000} else {0x0000040})
  2095.     prop SYNCRL1_CESEC1 :: (if (self.SYNCRL1_SETUP == "0 cycle") {0x00000000} else {if (self.SYNCRL1_SETUP == "1 cycle") {0x00000001} else {if (self.SYNCRL1_SETUP == "2 cycles") {0x00000002} else {0x00000003}}})
  2096.     prop SYNCWL1_CESEC1 :: (if (self.SYNCWL1_SETUP == "0 cycle") {0x00000000} else {if (self.SYNCWL1_SETUP == "1 cycle") {0x00000004} else {if (self.SYNCWL1_SETUP == "2 cycles") {0x00000008} else {0x0000000c}}})
  2097.     prop CEEXT1_CESEC1 :: (if (self.CEEXT1_SETUP == "Inactive") {0x00000000} else {0x0000010})
  2098.     prop RENEN1_CESEC1 :: (if (self.RENEN1_SETUP == "ADS Mode") {0x00000000} else {0x0000020})
  2099.     prop SNCCLK1_CESEC1 :: (if (self.SNCCLK1_SETUP == "Sync. to ECLKOUT1") {0x00000000} else {0x0000040})
  2100.     prop SYNCRL2_CESEC2 :: (if (self.SYNCRL2_SETUP == "0 cycle") {0x00000000} else {if (self.SYNCRL2_SETUP == "1 cycle") {0x00000001} else {if (self.SYNCRL2_SETUP == "2 cycles") {0x00000002} else {0x00000003}}})
  2101.     prop SYNCWL2_CESEC2 :: (if (self.SYNCWL2_SETUP == "0 cycle") {0x00000000} else {if (self.SYNCWL2_SETUP == "1 cycle") {0x00000004} else {if (self.SYNCWL2_SETUP == "2 cycles") {0x00000008} else {0x0000000c}}})
  2102.     prop CEEXT2_CESEC2 :: (if (self.CEEXT2_SETUP == "Inactive") {0x00000000} else {0x0000010})
  2103.     prop RENEN2_CESEC2 :: (if (self.RENEN2_SETUP == "ADS Mode") {0x00000000} else {0x0000020})
  2104.     prop SNCCLK2_CESEC2 :: (if (self.SNCCLK2_SETUP == "Sync. to ECLKOUT1") {0x00000000} else {0x0000040})
  2105.     prop SYNCRL3_CESEC3 :: (if (self.SYNCRL3_SETUP == "0 cycle") {0x00000000} else {if (self.SYNCRL3_SETUP == "1 cycle") {0x00000001} else {if (self.SYNCRL3_SETUP == "2 cycles") {0x00000002} else {0x00000003}}})
  2106.     prop SYNCWL3_CESEC3 :: (if (self.SYNCWL3_SETUP == "0 cycle") {0x00000000} else {if (self.SYNCWL3_SETUP == "1 cycle") {0x00000004} else {if (self.SYNCWL3_SETUP == "2 cycles") {0x00000008} else {0x0000000c}}})
  2107.     prop CEEXT3_CESEC3 :: (if (self.CEEXT3_SETUP == "Inactive") {0x00000000} else {0x0000010})
  2108.     prop RENEN3_CESEC3 :: (if (self.RENEN3_SETUP == "ADS Mode") {0x00000000} else {0x0000020})
  2109.     prop SNCCLK3_CESEC3 :: (if (self.SNCCLK3_SETUP == "Sync. to ECLKOUT1") {0x00000000} else {0x0000040})
  2110.     prop TRC_SDCTL :: ((self.TRC_SETUP << 12))
  2111.     prop TRP_SDCTL :: ((self.TRP_SETUP << 16))
  2112.     prop TRCD_SDCTL :: ((self.TRCD_SETUP << 20))
  2113.     prop INIT_SDCTL :: (if (self.INIT_SETUP == "Initialize") {0x01000000} else {0x00000000})
  2114.     prop RFEN_SDCTL :: (if (self.RFEN_SETUP == "Enable") {0x02000000} else {0x00000000})
  2115.     prop SDCSZ_SDCTL :: (if (self.SDCSZ_SETUP == " 8 addresses") {0x04000000} else {if (self.SDCSZ_SETUP == "10 addresses") {0x08000000} else {0x00000000}})
  2116.     prop SDRSZ_SDCTL :: (if (self.SDRSZ_SETUP == "12 addresses") {0x10000000} else {if (self.SDRSZ_SETUP == "13 addresses") {0x20000000} else {0x00000000}})
  2117.     prop SDBSZ_SDCTL :: (if (self.SDBSZ_SETUP == "Four banks") {0x40000000} else {0x00000000})
  2118.     prop PERIOD_SDTIM2 :: ((self.PERIOD_SETUP2))
  2119.     prop XRFR_SDTIM :: (((self.XRFR_SETUP - 1) << 24))
  2120.     prop TCL_SDEXT :: ((self.TCL_SETUP - 2))
  2121.     prop TRAS_SDEXT :: (((self.TRAS_SETUP - 1) << 1))
  2122.     prop TRRD_SDEXT :: ((self.TRRD_SETUP - 2) << 4)
  2123.     prop TWR_SDEXT :: (((self.TWR_SETUP - 1) << 5))
  2124.     prop THZP_SDEXT :: (((self.THZP_SETUP - 1) << 7))
  2125.     prop RD2RD_SDEXT :: (((self.RD2RD_SETUP - 1) << 9))
  2126.     prop RD2DEAC_SDEXT :: (((self.RD2DEAC_SETUP - 1) << 10))
  2127.     prop RD2WR_SDEXT :: (((self.RD2WR_SETUP - 1) << 12))
  2128.     prop R2WDQM_SDEXT :: (((self.R2WDQM_SETUP - 1) << 15))
  2129.     prop WR2WR_SDEXT :: (((self.WR2WR_SETUP - 1) << 17))
  2130.     prop WR2DEAC_SDEXT :: (((self.WR2DEAC_SETUP - 1) << 18))
  2131.     prop WR2RD_SDEXT :: (((self.WR2RD_SETUP - 1) << 20))
  2132.     prop GBLCTL_VALUE_update :: (0x00000004 | self.NOHOLD_GBLCTL() | self.CLK4EN_GBLCTL() | self.CLK6EN_GBLCTL() | self.EK1EN_GBLCTL() | self.EK2EN_GBLCTL() | self.EK1HZ_GBLCTL() | self.EK2HZ_GBLCTL() | self.EK2RATE_GBLCTL() | self.BRMODE_GBLCTL())
  2133.     prop GBLCTL_SETUP_update :: (self.NOHOLD_SETUP = if ($1 & 0x00000080) {"Disable Hold"} else {"Enable Hold"}, self.CLK4EN_SETUP = if ($1 & 0x00000010) {"Enabled to clock"} else {"Held high"}, self.CLK6EN_SETUP = if ($1 & 0x00000008) {"Enabled to clock"} else {"Held high"}, self.EK1EN_SETUP = if ($1 & 0x00000020) {"Enabled to clock"} else {"Held low"}, self.EK2EN_SETUP = if ($1 & 0x00010000) {"Enabled to clock"} else {"Held low"}, self.EK1HZ_SETUP = if ($1 & 0x00000040) {"High-Z during hold"} else {"Clock during hold"}, self.EK2HZ_SETUP = if ($1 & 0x00020000) {"High-Z during hold"} else {"Clock during hold"}, self.BRMODE_SETUP = if ($1 & 0x00002000) {"access/refresh pending or in progress"} else {"access pending or in progress"}, $a = $1 & 0x000C0000, if ($a == 0x00080000) {self.EK2RATE_SETUP = "1/4x EMIF input clock"} else {self.EK2RATE_SETUP = if ($1 & 0x00040000) {"1/2x EMIF input clock"} else {"1x EMIF input clock"}})
  2134.     prop CECTL0_VALUE_update :: (self.MTYPE0_CECTL0() | self.RDHLD0_CECTL0() | self.RDSTRB0_CECTL0() | self.RDSETUP0_CECTL0() | self.WRHLD0_CECTL0() | self.WRHLDMSB0_CECTL0() | self.WRSETUP0_CECTL0() | self.WRSTRB0_CECTL0() | self.TA0_CECTL0())
  2135.     prop CECTL0_SETUP_update :: (self.MTYPE0_SETUP = ($a = ($1 & 0x000000f0), if ($a == 0x00000000) {"  8-bit async. interf."} else {if ($a == 0x00000010) {"16-bit async. interf."} else {if ($a == 0x00000080) {"  8-bit SDRAM"} else {if ($a == 0x00000090) {"16-bit SDRAM"} else {if ($a == 0x000000a0) {"  8-bit prog. sync. mem"} else {"16-bit prog. sync. mem"}}}}}), self.RDHLD0_SETUP = ($1 & 0x00000007), self.RDSTRB0_SETUP = (($1 & 0x00003F00) >> 8), self.RDSETUP0_SETUP = (($1 & 0x000F0000) >> 16), self.WRHLD0_SETUP = ((($1 & 0x00300000) >> 20) + (($1 & 0x00000008) >> 1)), self.WRSTRB0_SETUP = (($1 & 0x0FC00000) >> 22), self.WRSETUP0_SETUP = (($1 >> 28) & 0xF), self.TA0_SETUP = ($1 & 0x0000c000) >> 14)
  2136.     prop CECTL1_VALUE_update :: (self.MTYPE1_CECTL1() | self.RDHLD1_CECTL1() | self.RDSTRB1_CECTL1() | self.RDSETUP1_CECTL1() | self.WRHLD1_CECTL1() | self.WRHLDMSB1_CECTL1() | self.WRSETUP1_CECTL1() | self.WRSTRB1_CECTL1() | self.TA1_CECTL1())
  2137.     prop CECTL1_SETUP_update :: (self.MTYPE1_SETUP = ($a = ($1 & 0x000000f0), if ($a == 0x00000000) {"  8-bit async. interf."} else {if ($a == 0x00000010) {"16-bit async. interf."} else {if ($a == 0x00000080) {"  8-bit SDRAM"} else {if ($a == 0x00000090) {"16-bit SDRAM"} else {if ($a == 0x000000a0) {"  8-bit prog. sync. mem"} else {"16-bit prog. sync. mem"}}}}}), self.RDHLD1_SETUP = ($1 & 0x00000007), self.RDSTRB1_SETUP = (($1 & 0x00003F00) >> 8), self.RDSETUP1_SETUP = (($1 & 0x000F0000) >> 16), self.WRHLD1_SETUP = ((($1 & 0x00300000) >> 20) + (($1 & 0x00000008) >> 1)), self.WRSTRB1_SETUP = (($1 & 0x0FC00000) >> 22), self.WRSETUP1_SETUP = (($1 >> 28) & 0xF), self.TA1_SETUP = ($1 & 0x0000c000) >> 14)
  2138.     prop CECTL2_VALUE_update :: (self.MTYPE2_CECTL2() | self.RDHLD2_CECTL2() | self.RDSTRB2_CECTL2() | self.RDSETUP2_CECTL2() | self.WRHLD2_CECTL2() | self.WRHLDMSB2_CECTL2() | self.WRSETUP2_CECTL2() | self.WRSTRB2_CECTL2() | self.TA2_CECTL2())
  2139.     prop CECTL2_SETUP_update :: (self.MTYPE2_SETUP = ($a = ($1 & 0x000000f0), if ($a == 0x00000000) {"  8-bit async. interf."} else {if ($a == 0x00000010) {"16-bit async. interf."} else {if ($a == 0x00000080) {"  8-bit SDRAM"} else {if ($a == 0x00000090) {"16-bit SDRAM"} else {if ($a == 0x000000a0) {"  8-bit prog. sync. mem"} else {"16-bit prog. sync. mem"}}}}}), self.RDHLD2_SETUP = ($1 & 0x00000007), self.RDSTRB2_SETUP = (($1 & 0x00003F00) >> 8), self.RDSETUP2_SETUP = (($1 & 0x000F0000) >> 16), self.WRHLD2_SETUP = ((($1 & 0x00300000) >> 20) + (($1 & 0x00000008) >> 1)), self.WRSTRB2_SETUP = (($1 & 0x0FC00000) >> 22), self.WRSETUP2_SETUP = (($1 >> 28) & 0xF), self.TA2_SETUP = ($1 & 0x0000c000) >> 14)
  2140.     prop CECTL3_VALUE_update :: (self.MTYPE3_CECTL3() | self.RDHLD3_CECTL3() | self.RDSTRB3_CECTL3() | self.RDSETUP3_CECTL3() | self.WRHLD3_CECTL3() | self.WRHLDMSB3_CECTL3() | self.WRSETUP3_CECTL3() | self.WRSTRB3_CECTL3() | self.TA3_CECTL3())
  2141.     prop CECTL3_SETUP_update :: (self.MTYPE3_SETUP = ($a = ($1 & 0x000000f0), if ($a == 0x00000000) {"  8-bit async. interf."} else {if ($a == 0x00000010) {"16-bit async. interf."} else {if ($a == 0x00000080) {"  8-bit SDRAM"} else {if ($a == 0x00000090) {"16-bit SDRAM"} else {if ($a == 0x000000a0) {"  8-bit prog. sync. mem"} else {"16-bit prog. sync. mem"}}}}}), self.RDHLD3_SETUP = ($1 & 0x00000007), self.RDSTRB3_SETUP = (($1 & 0x00003F00) >> 8), self.RDSETUP3_SETUP = (($1 & 0x000F0000) >> 16), self.WRHLD3_SETUP = ((($1 & 0x00300000) >> 20) + (($1 & 0x00000008) >> 1)), self.WRSTRB3_SETUP = (($1 & 0x0FC00000) >> 22), self.WRSETUP3_SETUP = (($1 >> 28) & 0xF), self.TA3_SETUP = ($1 & 0x0000c000) >> 14)
  2142.     prop SDCTL_VALUE_update :: (self.TRC_SDCTL() | self.TRP_SDCTL() | self.TRCD_SDCTL() | self.INIT_SDCTL() | self.RFEN_SDCTL() | self.SDCSZ_SDCTL() | self.SDRSZ_SDCTL() | self.SDBSZ_SDCTL())
  2143.     prop SDCTL_SETUP_update :: (self.TRC_SETUP = ($1 & 0x0000F000) >> 12, self.TRP_SETUP = ($1 & 0x000F0000) >> 16, self.TRCD_SETUP = ($1 & 0x00F00000) >> 20, self.INIT_SETUP = ($a = ($1 & 0x01000000), if ($a == 0x01000000) {"Initialize"} else {"No effect"}), self.RFEN_SETUP = ($a = ($1 & 0x02000000), if ($a == 0x02000000) {"Enable"} else {"Disable"}), self.SDCSZ_SETUP = ($a = ($1 & 0x0c000000), if ($a == 0x04000000) {" 8 addresses"} else {if ($a == 0x08000000) {"10 addresses"} else {" 9 addresses"}}), self.SDRSZ_SETUP = ($a = ($1 & 0x30000000), if ($a == 0x10000000) {"12 addresses"} else {if ($a == 0x20000000) {"13 addresses"} else {"11 addresses"}}), self.SDBSZ_SETUP = ($a = ($1 & 0x40000000), if ($a == 0x40000000) {"Four banks"} else {"Two banks"}))
  2144.     prop SDTIM_VALUE_update :: (self.PERIOD_SDTIM2() | self.XRFR_SDTIM() | 0x005dc000)
  2145.     prop SDTIM_SETUP_update :: (self.PERIOD_SETUP2 = ($1 & 0x00000FFF), self.XRFR_SETUP = (($1 & 0x03000000) >> 24) + 1)
  2146.     prop SDEXT_VALUE_update :: (self.TCL_SDEXT() | self.TRAS_SDEXT() | self.TRRD_SDEXT() | self.TWR_SDEXT() | self.THZP_SDEXT() | self.RD2RD_SDEXT() | self.RD2DEAC_SDEXT() | self.RD2WR_SDEXT() | self.R2WDQM_SDEXT() | self.WR2WR_SDEXT() | self.WR2DEAC_SDEXT() | self.WR2RD_SDEXT())
  2147.     prop SDEXT_SETUP_update :: (self.TCL_SETUP = ($1 & 0x00000001) + 2, self.TRAS_SETUP = (($1 & 0x0000000E) >> 1) + 1, self.TRRD_SETUP = (($1 & 0x00000010) >> 4) + 2, self.TWR_SETUP = (($1 & 0x00000060) >> 5) + 1, self.THZP_SETUP = (($1 & 0x00000180) >> 7) + 1, self.RD2RD_SETUP = (($1 & 0x00000200) >> 9) + 1, self.RD2DEAC_SETUP = (($1 & 0x00000c00) >> 10) + 1, self.RD2WR_SETUP = (($1 & 0x00007000) >> 12) + 1, self.R2WDQM_SETUP = (($1 & 0x00018000) >> 15) + 1, self.WR2WR_SETUP = (($1 & 0x00020000) >> 17) + 1, self.WR2DEAC_SETUP = (($1 & 0x000c0000) >> 18) + 1, self.WR2RD_SETUP = (($1 & 0x00100000) >> 20) + 1)
  2148.     prop CESEC0_VALUE_update :: (self.SYNCRL0_CESEC0() | self.SYNCWL0_CESEC0() | self.CEEXT0_CESEC0() | self.RENEN0_CESEC0() | self.SNCCLK0_CESEC0())
  2149.     prop CESEC0_SETUP_update :: (self.SYNCRL0_SETUP = ($a = ($1 & 0x00000003), if ($a == 0x00000000) {"0 cycle"} else {if ($a == 0x00000001) {"1 cycle"} else {if ($a == 0x00000002) {"2 cycles"} else {"3 cycles"}}}), self.SYNCWL0_SETUP = ($a = ($1 & 0x0000000C), if ($a == 0x00000000) {"0 cycle"} else {if ($a == 0x00000004) {"1 cycle"} else {if ($a == 0x00000008) {"2 cycles"} else {"3 cycles"}}}), self.CEEXT0_SETUP = ($a = ($1 & 0x00000010), if ($a == 0x00000000) {"Inactive"} else {"Active"}), self.RENEN0_SETUP = ($a = ($1 & 0x00000020), if ($a == 0x00000000) {"ADS Mode"} else {"Read Enable Mode"}), self.SNCCLK0_SETUP = ($a = ($1 & 0x00000040), if ($a == 0x00000000) {"Sync. to ECLKOUT1"} else {"Sync. to ECLKOUT2"}))
  2150.     prop CESEC1_VALUE_update :: (self.SYNCRL1_CESEC1() | self.SYNCWL1_CESEC1() | self.CEEXT1_CESEC1() | self.RENEN1_CESEC1() | self.SNCCLK1_CESEC1())
  2151.     prop CESEC1_SETUP_update :: (self.SYNCRL1_SETUP = ($a = ($1 & 0x00000003), if ($a == 0x00000000) {"0 cycle"} else {if ($a == 0x00000001) {"1 cycle"} else {if ($a == 0x00000002) {"2 cycles"} else {"3 cycles"}}}), self.SYNCWL1_SETUP = ($a = ($1 & 0x0000000C), if ($a == 0x00000000) {"0 cycle"} else {if ($a == 0x00000004) {"1 cycle"} else {if ($a == 0x00000008) {"2 cycles"} else {"3 cycles"}}}), self.CEEXT1_SETUP = ($a = ($1 & 0x00000010), if ($a == 0x00000000) {"Inactive"} else {"Active"}), self.RENEN1_SETUP = ($a = ($1 & 0x00000020), if ($a == 0x00000000) {"ADS Mode"} else {"Read Enable Mode"}), self.SNCCLK1_SETUP = ($a = ($1 & 0x00000040), if ($a == 0x00000000) {"Sync. to ECLKOUT1"} else {"Sync. to ECLKOUT2"}))
  2152.     prop CESEC2_VALUE_update :: (self.SYNCRL2_CESEC2() | self.SYNCWL2_CESEC2() | self.CEEXT2_CESEC2() | self.RENEN2_CESEC2() | self.SNCCLK2_CESEC2())
  2153.     prop CESEC2_SETUP_update :: (self.SYNCRL2_SETUP = ($a = ($1 & 0x00000003), if ($a == 0x00000000) {"0 cycle"} else {if ($a == 0x00000001) {"1 cycle"} else {if ($a == 0x00000002) {"2 cycles"} else {"3 cycles"}}}), self.SYNCWL2_SETUP = ($a = ($1 & 0x0000000C), if ($a == 0x00000000) {"0 cycle"} else {if ($a == 0x00000004) {"1 cycle"} else {if ($a == 0x00000008) {"2 cycles"} else {"3 cycles"}}}), self.CEEXT2_SETUP = ($a = ($1 & 0x00000010), if ($a == 0x00000000) {"Inactive"} else {"Active"}), self.RENEN2_SETUP = ($a = ($1 & 0x00000020), if ($a == 0x00000000) {"ADS Mode"} else {"Read Enable Mode"}), self.SNCCLK2_SETUP = ($a = ($1 & 0x00000040), if ($a == 0x00000000) {"Sync. to ECLKOUT1"} else {"Sync. to ECLKOUT2"}))
  2154.     prop CESEC3_VALUE_update :: (self.SYNCRL3_CESEC3() | self.SYNCWL3_CESEC3() | self.CEEXT3_CESEC3() | self.RENEN3_CESEC3() | self.SNCCLK3_CESEC3())
  2155.     prop CESEC3_SETUP_update :: (self.SYNCRL3_SETUP = ($a = ($1 & 0x00000003), if ($a == 0x00000000) {"0 cycle"} else {if ($a == 0x00000001) {"1 cycle"} else {if ($a == 0x00000002) {"2 cycles"} else {"3 cycles"}}}), self.SYNCWL3_SETUP = ($a = ($1 & 0x0000000C), if ($a == 0x00000000) {"0 cycle"} else {if ($a == 0x00000004) {"1 cycle"} else {if ($a == 0x00000008) {"2 cycles"} else {"3 cycles"}}}), self.CEEXT3_SETUP = ($a = ($1 & 0x00000010), if ($a == 0x00000000) {"Inactive"} else {"Active"}), self.RENEN3_SETUP = ($a = ($1 & 0x00000020), if ($a == 0x00000000) {"ADS Mode"} else {"Read Enable Mode"}), self.SNCCLK3_SETUP = ($a = ($1 & 0x00000040), if ($a == 0x00000000) {"Sync. to ECLKOUT1"} else {"Sync. to ECLKOUT2"}))
  2156.     global gUser :: "USER" { 
  2157.         prop Visible :: 0
  2158.         prop Writable :: 0
  2159.         prop NoGen :: 1
  2160.     }
  2161.     global gSetOf :: 0 { 
  2162.         prop Visible :: 0
  2163.         prop Writable :: 0
  2164.         prop NoGen :: 1
  2165.     }
  2166.     global gNumOf :: 0 { 
  2167.         prop Visible :: 0
  2168.         prop Writable :: 0
  2169.         prop NoGen :: 1
  2170.     }
  2171.     global gDirty :: 0 { 
  2172.         prop Visible :: 0
  2173.         prop Writable :: 0
  2174.         prop NoGen :: 1
  2175.     }
  2176.     global gInitFlag :: 1 { 
  2177.         prop Visible :: 0
  2178.         prop Writable :: 0
  2179.         prop NoGen :: 1
  2180.     }
  2181.     global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { 
  2182.         prop Visible :: 0
  2183.         prop Writable :: 0
  2184.         prop NoGen :: 1
  2185.     }
  2186.     inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} { 
  2187.         prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
  2188.         prop Label :: "comment"
  2189.         prop JSName :: "comment"
  2190.         prop Visible :: 1
  2191.         prop Writable :: if self.iDelUser == "USER" {1} else {0}
  2192.         prop NoGen :: 1
  2193.     }
  2194.     inst iIsUsed :: 0 { 
  2195.         prop Visible :: 0
  2196.         prop Writable :: 0
  2197.         prop NoGen :: 1
  2198.     }
  2199.     inst iId :: 0 { 
  2200.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2201.         prop Style :: 0x01
  2202.         prop Visible :: 0
  2203.         prop Writable :: 1
  2204.         prop NoGen :: 1
  2205.     }
  2206.     inst iDelUser :: "USER" { 
  2207.         prop Visible :: 0
  2208.         prop Writable :: 0
  2209.         prop NoGen :: 1
  2210.     }
  2211.     inst iDelMsg :: "ok" { 
  2212.         prop Visible :: 0
  2213.         prop Writable :: 0
  2214.         prop NoGen :: 1
  2215.     }
  2216.     inst cConfigGen :: = ((hEmifb.EMIFB_INIT_ENABLE == 1) && (hEmifb.EMIFB_INIT == self) && (hEmifb.EMIFB_INIT != EMIFB_NOTHING)) { 
  2217.         prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
  2218.         prop NoGen :: 1
  2219.         prop Visible :: 0
  2220.     }
  2221.     inst cConfigArg0 :: = hEmifb.EMIFB_INIT { 
  2222.         prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
  2223.         prop MemberType :: emifbCfg
  2224.         prop Label :: "Pre-initialize Config"
  2225.         prop Visible :: 0
  2226.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2227.         prop NoGen :: 0
  2228.         prop cPreVal :: "&"
  2229.     }
  2230.     inst NOHOLD_SETUP :: "Enable Hold" { 
  2231.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  2232.         prop Enum :: "Enable Hold,Disable Hold"
  2233.         prop Label :: "External HOLD disable (NOHOLD)"
  2234.         prop JSName :: "emifbGblctlNoHold"
  2235.         prop Visible :: 1
  2236.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2237.         prop NoGen :: 1
  2238.         prop TabName :: "Global Control"
  2239.         prop Set :: (self.NOHOLD_SETUP = $1, self.GBLCTL_VALUE = self.GBLCTL_VALUE_update(), "ok")
  2240.     }
  2241.     inst CLK4EN_SETUP :: "Enabled to clock" { 
  2242.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  2243.         prop Enum :: "Held high,Enabled to clock"
  2244.         prop Label :: "CLKOUT4 Enable (CLK4EN)"
  2245.         prop JSName :: "emifbGblctlClk4en"
  2246.         prop Visible :: 1
  2247.         prop Writable :: if (CSL.EMIFB_SUPPORT != 0) {1} else {0}
  2248.         prop NoGen :: 1
  2249.         prop TabName :: "Global Control"
  2250.         prop Set :: (self.CLK4EN_SETUP = $1, self.GBLCTL_VALUE = self.GBLCTL_VALUE_update(), "ok")
  2251.     }
  2252.     inst CLK6EN_SETUP :: "Enabled to clock" { 
  2253.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  2254.         prop Enum :: "Held high,Enabled to clock"
  2255.         prop Label :: "CLKOUT6 Enable (CLK6EN)"
  2256.         prop JSName :: "emifbGblctlClk6en"
  2257.         prop Visible :: 1
  2258.         prop Writable :: if (CSL.EMIFB_SUPPORT != 0) {1} else {0}
  2259.         prop NoGen :: 1
  2260.         prop TabName :: "Global Control"
  2261.         prop Set :: (self.CLK6EN_SETUP = $1, self.GBLCTL_VALUE = self.GBLCTL_VALUE_update(), "ok")
  2262.     }
  2263.     inst EK1EN_SETUP :: "Enabled to clock" { 
  2264.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  2265.         prop Enum :: "Held low,Enabled to clock"
  2266.         prop Label :: "ECLKOUT1 Enable (EK1EN)"
  2267.         prop JSName :: "emifbGblctlEk1en"
  2268.         prop Visible :: 1
  2269.         prop Writable :: if (CSL.EMIFB_SUPPORT != 0) {1} else {0}
  2270.         prop NoGen :: 1
  2271.         prop TabName :: "Global Control"
  2272.         prop Set :: (self.EK1EN_SETUP = $1, self.GBLCTL_VALUE = self.GBLCTL_VALUE_update(), "ok")
  2273.     }
  2274.     inst EK2EN_SETUP :: "Enabled to clock" { 
  2275.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  2276.         prop Enum :: "Held low,Enabled to clock"
  2277.         prop Label :: "ECLKOUT2 Enable (EK2EN)"
  2278.         prop JSName :: "emifbGblctlEk2en"
  2279.         prop Visible :: 1
  2280.         prop Writable :: if (CSL.EMIFB_SUPPORT != 0) {1} else {0}
  2281.         prop NoGen :: 1
  2282.         prop TabName :: "Global Control"
  2283.         prop Set :: (self.EK2EN_SETUP = $1, self.GBLCTL_VALUE = self.GBLCTL_VALUE_update(), "ok")
  2284.     }
  2285.     inst EK1HZ_SETUP :: "High-Z during hold" { 
  2286.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  2287.         prop Enum :: "Clock during hold,High-Z during hold"
  2288.         prop Label :: "ECLKOUT1 High-Z Control (EK1HZ)"
  2289.         prop JSName :: "emifbGblctlEk1hz"
  2290.         prop Visible :: 1
  2291.         prop Writable :: if (CSL.EMIFB_SUPPORT != 0) {1} else {0}
  2292.         prop NoGen :: 1
  2293.         prop TabName :: "Global Control"
  2294.         prop Set :: (self.EK1HZ_SETUP = $1, self.GBLCTL_VALUE = self.GBLCTL_VALUE_update(), "ok")
  2295.     }
  2296.     inst EK2HZ_SETUP :: "Clock during hold" { 
  2297.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  2298.         prop Enum :: "Clock during hold,High-Z during hold"
  2299.         prop Label :: "ECLKOUT2 High-Z Control (EK2HZ)"
  2300.         prop JSName :: "emifbGblctlEk2hz"
  2301.         prop Visible :: 1
  2302.         prop Writable :: if (CSL.EMIFB_SUPPORT != 0) {1} else {0}
  2303.         prop NoGen :: 1
  2304.         prop TabName :: "Global Control"
  2305.         prop Set :: (self.EK2HZ_SETUP = $1, self.GBLCTL_VALUE = self.GBLCTL_VALUE_update(), "ok")
  2306.     }
  2307.     inst EK2RATE_SETUP :: "1/4x EMIF input clock" { 
  2308.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  2309.         prop Enum :: "1x EMIF input clock,1/2x EMIF input clock,1/4x EMIF input clock"
  2310.         prop Label :: "ECLKOUT2 Rate (EK2RATE)"
  2311.         prop JSName :: "emifbGblctlEk2rate"
  2312.         prop Visible :: 1
  2313.         prop Writable :: if (CSL.EMIFB_SUPPORT != 0) {1} else {0}
  2314.         prop NoGen :: 1
  2315.         prop TabName :: "Global Control"
  2316.         prop Set :: (self.EK2RATE_SETUP = $1, self.GBLCTL_VALUE = self.GBLCTL_VALUE_update(), "ok")
  2317.     }
  2318.     inst BRMODE_SETUP :: "access/refresh pending or in progress" { 
  2319.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  2320.         prop Enum :: "access/refresh pending or in progress,access pending or in progress"
  2321.         prop Label :: "Bus Request Mode"
  2322.         prop JSName :: "emifbGblctlBrmode"
  2323.         prop Visible :: 1
  2324.         prop Writable :: if (CSL.EMIFB_SUPPORT != 0) {1} else {0}
  2325.         prop NoGen :: 1
  2326.         prop TabName :: "Global Control"
  2327.         prop Set :: (self.BRMODE_SETUP = $1, self.GBLCTL_VALUE = self.GBLCTL_VALUE_update(), "ok")
  2328.     }
  2329.     inst MTYPE0_SETUP :: "  8-bit async. interf." { 
  2330.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  2331.         prop Enum :: "  8-bit async. interf.,16-bit async. interf.,  8-bit SDRAM,16-bit SDRAM,  8-bit prog. sync. mem,16-bit prog. sync. mem"
  2332.         prop Label :: "Memory Type (MTYPE)"
  2333.         prop JSName :: "emifbCectl0Mtype"
  2334.         prop Visible :: 1
  2335.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2336.         prop NoGen :: 1
  2337.         prop TabName :: "CE0 Space"
  2338.         prop Set :: (self.MTYPE0_SETUP = $1, self.CECTL0_VALUE = self.CECTL0_VALUE_update(), "ok")
  2339.     }
  2340.     inst RDSTRB0_SETUP :: 63 { 
  2341.         prop Label :: "Read Strobe Width "
  2342.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2343.         prop Style :: 0x01 | 0x02
  2344.         prop JSName :: "emifbCectl0ReadStrobe"
  2345.         prop Visible :: 1
  2346.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2347.         prop NoGen :: 1
  2348.         prop TabName :: "CE0 Space"
  2349.         prop Set :: (if ($1 < 0 || $1 > 63) {self.error(" Minimum strobe :0 cycle - Maximum strobe: 63 cycless")} else {self.RDSTRB0_SETUP = $1, self.CECTL0_VALUE = self.CECTL0_VALUE_update(), "ok"})
  2350.     }
  2351.     inst RDSETUP0_SETUP :: 15 { 
  2352.         prop Label :: "Read Setup Width "
  2353.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2354.         prop Style :: 0x01 | 0x02
  2355.         prop JSName :: "emifbCectl0ReadSetup"
  2356.         prop Visible :: 1
  2357.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2358.         prop NoGen :: 1
  2359.         prop TabName :: "CE0 Space"
  2360.         prop Set :: (if ($1 < 0 || $1 > 15) {self.error(" Minimum setup :0 cycle - Maximum setup: 15 cycles")} else {self.RDSETUP0_SETUP = $1, self.CECTL0_VALUE = self.CECTL0_VALUE_update(), "ok"})
  2361.     }
  2362.     inst RDHLD0_SETUP :: 3 { 
  2363.         prop Label :: "Read Hold Width "
  2364.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2365.         prop Style :: 0x01 | 0x02
  2366.         prop JSName :: "emifbCectl0ReadHold"
  2367.         prop Visible :: 1
  2368.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2369.         prop NoGen :: 1
  2370.         prop TabName :: "CE0 Space"
  2371.         prop Set :: (if ((!CSL.C11_SUPPORT)) {if ($1 < 0 || $1 > 3) {self.error(" Minimum hold :0 cycle - Maximum hold: 3 cycless")} else {self.RDHLD0_SETUP = $1, self.CECTL0_VALUE = self.CECTL0_VALUE_update(), "ok"}} else {if ($1 < 0 || $1 > 7) {self.error(" Minimum hold :0 cycle - Maximum hold: 7 cycles")} else {self.RDHLD0_SETUP = $1, self.CECTL0_VALUE = self.CECTL0_VALUE_update(), "ok"}})
  2372.     }
  2373.     inst WRSTRB0_SETUP :: 63 { 
  2374.         prop Label :: "Write Strobe Width "
  2375.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2376.         prop Style :: 0x01 | 0x02
  2377.         prop JSName :: "emifbCectl0WriteStrobe"
  2378.         prop Visible :: 1
  2379.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2380.         prop NoGen :: 1
  2381.         prop TabName :: "CE0 Space"
  2382.         prop Set :: (if ($1 < 0 || $1 > 63) {self.error(" Minimum strobe :0 cycle - Maximum strobe: 63 cycless")} else {self.WRSTRB0_SETUP = $1, self.CECTL0_VALUE = self.CECTL0_VALUE_update(), "ok"})
  2383.     }
  2384.     inst WRSETUP0_SETUP :: 15 { 
  2385.         prop Label :: "Write Setup Width "
  2386.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2387.         prop Style :: 0x01 | 0x02
  2388.         prop JSName :: "emifbCectl0WriteSetup"
  2389.         prop Visible :: 1
  2390.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2391.         prop NoGen :: 1
  2392.         prop TabName :: "CE0 Space"
  2393.         prop Set :: (if ($1 < 0 || $1 > 15) {self.error(" Minimum setup :0 cycle - Maximum setup: 15 cycles")} else {self.WRSETUP0_SETUP = $1, self.CECTL0_VALUE = self.CECTL0_VALUE_update(), "ok"})
  2394.     }
  2395.     inst WRHLD0_SETUP :: 3 { 
  2396.         prop Label :: "Write Hold Width (WRHLD-WRHLDMSB) "
  2397.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2398.         prop Style :: 0x01 | 0x02
  2399.         prop JSName :: "emifbCectl0WriteHold"
  2400.         prop Visible :: 1
  2401.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2402.         prop NoGen :: 1
  2403.         prop TabName :: "CE0 Space"
  2404.         prop Set :: (if ($1 < 0 || $1 > 7) {self.error(" Minimum hold :0 cycle - Maximum hold: 7 cycles")} else {self.WRHLD0_SETUP = $1, self.CECTL0_VALUE = self.CECTL0_VALUE_update(), "ok"})
  2405.     }
  2406.     inst TA0_SETUP :: 3 { 
  2407.         prop Label :: "Turn around time (TA) "
  2408.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2409.         prop Style :: 0x01 | 0x02
  2410.         prop JSName :: "emifbCectl0Ta"
  2411.         prop Visible :: 1
  2412.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2413.         prop NoGen :: 1
  2414.         prop TabName :: "CE0 Space"
  2415.         prop Set :: (if ($1 < 1 || $1 > 3) {self.error(" Minimum: 1 ECLKOU1 cycle - Maximum : 3 ECLKOU1 cycles")} else {self.TA0_SETUP = $1, self.CECTL0_VALUE = self.CECTL0_VALUE_update(), "ok"})
  2416.     }
  2417.     inst MTYPE1_SETUP :: "  8-bit async. interf." { 
  2418.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  2419.         prop Enum :: "  8-bit async. interf.,16-bit async. interf.,  8-bit SDRAM,16-bit SDRAM,  8-bit prog. sync. mem,16-bit prog. sync. mem"
  2420.         prop Label :: "Memory Type (MTYPE)"
  2421.         prop JSName :: "emifbCectl1Mtype"
  2422.         prop Visible :: 1
  2423.         prop Writable :: (if (CSL.EMIFB_SUPPORT) {1} else {0})
  2424.         prop NoGen :: 1
  2425.         prop TabName :: "CE1 Space"
  2426.         prop Set :: (self.MTYPE1_SETUP = $1, self.CECTL1_VALUE = self.CECTL1_VALUE_update(), "ok")
  2427.     }
  2428.     inst RDSTRB1_SETUP :: 63 { 
  2429.         prop Label :: "Read Strobe Width "
  2430.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2431.         prop Style :: 0x01 | 0x02
  2432.         prop JSName :: "emifbCectl1ReadStrobe"
  2433.         prop Visible :: 1
  2434.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2435.         prop NoGen :: 1
  2436.         prop TabName :: "CE1 Space"
  2437.         prop Set :: (if ($1 < 0 || $1 > 63) {self.error(" Minimum strobe :0 cycle - Maximum strobe: 63 cycless")} else {self.RDSTRB1_SETUP = $1, self.CECTL1_VALUE = self.CECTL1_VALUE_update(), "ok"})
  2438.     }
  2439.     inst RDSETUP1_SETUP :: 15 { 
  2440.         prop Label :: "Read Setup Width "
  2441.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2442.         prop Style :: 0x01 | 0x02
  2443.         prop JSName :: "emifbCectl1ReadSetup"
  2444.         prop Visible :: 1
  2445.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2446.         prop NoGen :: 1
  2447.         prop TabName :: "CE1 Space"
  2448.         prop Set :: (if ($1 < 0 || $1 > 15) {self.error(" Minimum setup :0 cycle - Maximum setup: 15 cycles")} else {self.RDSETUP1_SETUP = $1, self.CECTL1_VALUE = self.CECTL1_VALUE_update(), "ok"})
  2449.     }
  2450.     inst RDHLD1_SETUP :: 3 { 
  2451.         prop Label :: "Read Hold Width "
  2452.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2453.         prop Style :: 0x01 | 0x02
  2454.         prop JSName :: "emifbCectl1ReadHold"
  2455.         prop Visible :: 1
  2456.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2457.         prop NoGen :: 1
  2458.         prop TabName :: "CE1 Space"
  2459.         prop Set :: (if ((!CSL.C11_SUPPORT)) {if ($1 < 0 || $1 > 3) {self.error(" Minimum hold :0 cycle - Maximum hold: 3 cycless")} else {self.RDHLD1_SETUP = $1, self.CECTL1_VALUE = self.CECTL1_VALUE_update(), "ok"}} else {if ($1 < 0 || $1 > 7) {self.error(" Minimum hold :0 cycle - Maximum hold: 7 cycles")} else {self.RDHLD1_SETUP = $1, self.CECTL1_VALUE = self.CECTL1_VALUE_update(), "ok"}})
  2460.     }
  2461.     inst WRSTRB1_SETUP :: 63 { 
  2462.         prop Label :: "Write Strobe Width "
  2463.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2464.         prop Style :: 0x01 | 0x02
  2465.         prop JSName :: "emifbCectl1WriteStrobe"
  2466.         prop Visible :: 1
  2467.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2468.         prop NoGen :: 1
  2469.         prop TabName :: "CE1 Space"
  2470.         prop Set :: (if ($1 < 0 || $1 > 63) {self.error(" Minimum strobe :0 cycle - Maximum strobe: 63 cycless")} else {self.WRSTRB1_SETUP = $1, self.CECTL1_VALUE = self.CECTL1_VALUE_update(), "ok"})
  2471.     }
  2472.     inst WRSETUP1_SETUP :: 15 { 
  2473.         prop Label :: "Write Setup Width "
  2474.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2475.         prop Style :: 0x01 | 0x02
  2476.         prop JSName :: "emifbCectl1WriteSetup"
  2477.         prop Visible :: 1
  2478.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2479.         prop NoGen :: 1
  2480.         prop TabName :: "CE1 Space"
  2481.         prop Set :: (if ($1 < 0 || $1 > 15) {self.error(" Minimum setup :0 cycle - Maximum setup: 15 cycles")} else {self.WRSETUP1_SETUP = $1, self.CECTL1_VALUE = self.CECTL1_VALUE_update(), "ok"})
  2482.     }
  2483.     inst WRHLD1_SETUP :: 3 { 
  2484.         prop Label :: "Write Hold Width (WRHLD - WHLDMSB) "
  2485.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2486.         prop Style :: 0x01 | 0x02
  2487.         prop JSName :: "emifbCectl1WriteHold"
  2488.         prop Visible :: 1
  2489.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2490.         prop NoGen :: 1
  2491.         prop TabName :: "CE1 Space"
  2492.         prop Set :: (if ($1 < 0 || $1 > 7) {self.error(" Minimum hold :0 cycle - Maximum hold: 7 cycles")} else {self.WRHLD1_SETUP = $1, self.CECTL1_VALUE = self.CECTL1_VALUE_update(), "ok"})
  2493.     }
  2494.     inst TA1_SETUP :: 3 { 
  2495.         prop Label :: "Turn around time (TA) "
  2496.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2497.         prop Style :: 0x01 | 0x02
  2498.         prop JSName :: "emifbCectl1Ta"
  2499.         prop Visible :: 1
  2500.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2501.         prop NoGen :: 1
  2502.         prop TabName :: "CE1 Space"
  2503.         prop Set :: (if ($1 < 1 || $1 > 3) {self.error(" Minimum: 1 ECLKOU1 cycle - Maximum : 3 ECLKOU1 cycles")} else {self.TA1_SETUP = $1, self.CECTL1_VALUE = self.CECTL1_VALUE_update(), "ok"})
  2504.     }
  2505.     inst MTYPE2_SETUP :: "  8-bit async. interf." { 
  2506.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  2507.         prop Enum :: "  8-bit async. interf.,16-bit async. interf.,  8-bit SDRAM,16-bit SDRAM,  8-bit prog. sync. mem,16-bit prog. sync. mem"
  2508.         prop Label :: "Memory Type (MTYPE)"
  2509.         prop JSName :: "emifbCectl2Mtype"
  2510.         prop Visible :: 1
  2511.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2512.         prop NoGen :: 1
  2513.         prop TabName :: "CE2 Space"
  2514.         prop Set :: (self.MTYPE2_SETUP = $1, self.CECTL2_VALUE = self.CECTL2_VALUE_update(), "ok")
  2515.     }
  2516.     inst RDSTRB2_SETUP :: 63 { 
  2517.         prop Label :: "Read Strobe Width "
  2518.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2519.         prop Style :: 0x01 | 0x02
  2520.         prop JSName :: "emifbCectl2ReadStrobe"
  2521.         prop Visible :: 1
  2522.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2523.         prop NoGen :: 1
  2524.         prop TabName :: "CE2 Space"
  2525.         prop Set :: (if ($1 < 0 || $1 > 63) {self.error(" Minimum strobe :0 cycle - Maximum strobe: 63 cycless")} else {self.RDSTRB2_SETUP = $1, self.CECTL2_VALUE = self.CECTL2_VALUE_update(), "ok"})
  2526.     }
  2527.     inst RDSETUP2_SETUP :: 15 { 
  2528.         prop Label :: "Read Setup Width "
  2529.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2530.         prop Style :: 0x01 | 0x02
  2531.         prop JSName :: "emifbCectl2ReadSetup"
  2532.         prop Visible :: 1
  2533.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2534.         prop NoGen :: 1
  2535.         prop TabName :: "CE2 Space"
  2536.         prop Set :: (if ($1 < 0 || $1 > 15) {self.error(" Minimum setup :0 cycle - Maximum setup: 15 cycles")} else {self.RDSETUP2_SETUP = $1, self.CECTL2_VALUE = self.CECTL2_VALUE_update(), "ok"})
  2537.     }
  2538.     inst RDHLD2_SETUP :: 3 { 
  2539.         prop Label :: "Read Hold Width "
  2540.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2541.         prop Style :: 0x01 | 0x02
  2542.         prop JSName :: "emifbCectl2ReadHold"
  2543.         prop Visible :: 1
  2544.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2545.         prop NoGen :: 1
  2546.         prop TabName :: "CE2 Space"
  2547.         prop Set :: (if ((!CSL.C11_SUPPORT)) {if ($1 < 0 || $1 > 3) {self.error(" Minimum hold :0 cycle - Maximum hold: 3 cycless")} else {self.RDHLD2_SETUP = $1, self.CECTL2_VALUE = self.CECTL2_VALUE_update(), "ok"}} else {if ($1 < 0 || $1 > 7) {self.error(" Minimum hold :0 cycle - Maximum hold: 7 cycles")} else {self.RDHLD2_SETUP = $1, self.CECTL2_VALUE = self.CECTL2_VALUE_update(), "ok"}})
  2548.     }
  2549.     inst WRSTRB2_SETUP :: 63 { 
  2550.         prop Label :: "Write Strobe Width "
  2551.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2552.         prop Style :: 0x01 | 0x02
  2553.         prop JSName :: "emifbCectl2WriteStrobe"
  2554.         prop Visible :: 1
  2555.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2556.         prop NoGen :: 1
  2557.         prop TabName :: "CE2 Space"
  2558.         prop Set :: (if ($1 < 0 || $1 > 63) {self.error(" Minimum strobe :0 cycle - Maximum strobe: 63 cycless")} else {self.WRSTRB2_SETUP = $1, self.CECTL2_VALUE = self.CECTL2_VALUE_update(), "ok"})
  2559.     }
  2560.     inst WRSETUP2_SETUP :: 15 { 
  2561.         prop Label :: "Write Setup Width "
  2562.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2563.         prop Style :: 0x01 | 0x02
  2564.         prop JSName :: "emifbCectl2WriteSetup"
  2565.         prop Visible :: 1
  2566.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2567.         prop NoGen :: 1
  2568.         prop TabName :: "CE2 Space"
  2569.         prop Set :: (if ($1 < 0 || $1 > 15) {self.error(" Minimum setup :0 cycle - Maximum setup: 15 cycles")} else {self.WRSETUP2_SETUP = $1, self.CECTL2_VALUE = self.CECTL2_VALUE_update(), "ok"})
  2570.     }
  2571.     inst WRHLD2_SETUP :: 3 { 
  2572.         prop Label :: "Write Hold Width "
  2573.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2574.         prop Style :: 0x01 | 0x02
  2575.         prop JSName :: "emifbCectl2WriteHold"
  2576.         prop Visible :: 1
  2577.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2578.         prop NoGen :: 1
  2579.         prop TabName :: "CE2 Space"
  2580.         prop Set :: (if ($1 < 0 || $1 > 7) {self.error(" Minimum hold :0 cycle - Maximum hold: 7 cycles")} else {self.WRHLD2_SETUP = $1, self.CECTL2_VALUE = self.CECTL2_VALUE_update(), "ok"})
  2581.     }
  2582.     inst TA2_SETUP :: 3 { 
  2583.         prop Label :: "Turn around time (TA) "
  2584.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2585.         prop Style :: 0x01 | 0x02
  2586.         prop JSName :: "emifbCectl2Ta"
  2587.         prop Visible :: 1
  2588.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2589.         prop NoGen :: 1
  2590.         prop TabName :: "CE2 Space"
  2591.         prop Set :: (if ($1 < 1 || $1 > 3) {self.error(" Minimum: 1 ECLKOU1 cycle - Maximum : 3 ECLKOU1 cycles")} else {self.TA2_SETUP = $1, self.CECTL2_VALUE = self.CECTL2_VALUE_update(), "ok"})
  2592.     }
  2593.     inst MTYPE3_SETUP :: "  8-bit async. interf." { 
  2594.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  2595.         prop Enum :: "  8-bit async. interf.,16-bit async. interf.,  8-bit SDRAM,16-bit SDRAM,  8-bit prog. sync. mem,16-bit prog. sync. mem"
  2596.         prop Label :: "Memory Type (MTYPE)"
  2597.         prop JSName :: "emifbCectl3Mtype"
  2598.         prop Visible :: 1
  2599.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2600.         prop NoGen :: 1
  2601.         prop TabName :: "CE3 Space"
  2602.         prop Set :: (self.MTYPE3_SETUP = $1, self.CECTL3_VALUE = self.CECTL3_VALUE_update(), "ok")
  2603.     }
  2604.     inst RDSTRB3_SETUP :: 63 { 
  2605.         prop Label :: "Read Strobe Width "
  2606.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2607.         prop Style :: 0x01 | 0x02
  2608.         prop JSName :: "emifbCectl3ReadStrobe"
  2609.         prop Visible :: 1
  2610.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2611.         prop NoGen :: 1
  2612.         prop TabName :: "CE3 Space"
  2613.         prop Set :: (if ($1 < 0 || $1 > 63) {self.error(" Minimum strobe :0 cycle - Maximum strobe: 63 cycless")} else {self.RDSTRB3_SETUP = $1, self.CECTL3_VALUE = self.CECTL3_VALUE_update(), "ok"})
  2614.     }
  2615.     inst RDSETUP3_SETUP :: 15 { 
  2616.         prop Label :: "Read Setup Width "
  2617.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2618.         prop Style :: 0x01 | 0x02
  2619.         prop JSName :: "emifbCectl3ReadSetup"
  2620.         prop Visible :: 1
  2621.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2622.         prop NoGen :: 1
  2623.         prop TabName :: "CE3 Space"
  2624.         prop Set :: (if ($1 < 0 || $1 > 15) {self.error(" Minimum setup :0 cycle - Maximum setup: 15 cycles")} else {self.RDSETUP3_SETUP = $1, self.CECTL3_VALUE = self.CECTL3_VALUE_update(), "ok"})
  2625.     }
  2626.     inst RDHLD3_SETUP :: 3 { 
  2627.         prop Label :: "Read Hold Width "
  2628.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2629.         prop Style :: 0x01 | 0x02
  2630.         prop JSName :: "emifbCectl3ReadHold"
  2631.         prop Visible :: 1
  2632.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2633.         prop NoGen :: 1
  2634.         prop TabName :: "CE3 Space"
  2635.         prop Set :: (if ((!CSL.C11_SUPPORT)) {if ($1 < 0 || $1 > 3) {self.error(" Minimum hold :0 cycle - Maximum hold: 3 cycless")} else {self.RDHLD3_SETUP = $1, self.CECTL3_VALUE = self.CECTL3_VALUE_update(), "ok"}} else {if ($1 < 0 || $1 > 7) {self.error(" Minimum hold :0 cycle - Maximum hold: 7 cycles")} else {self.RDHLD3_SETUP = $1, self.CECTL3_VALUE = self.CECTL3_VALUE_update(), "ok"}})
  2636.     }
  2637.     inst WRSTRB3_SETUP :: 63 { 
  2638.         prop Label :: "Write Strobe Width "
  2639.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2640.         prop Style :: 0x01 | 0x02
  2641.         prop JSName :: "emifbCectl3WriteStrobe"
  2642.         prop Visible :: 1
  2643.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2644.         prop NoGen :: 1
  2645.         prop TabName :: "CE3 Space"
  2646.         prop Set :: (if ($1 < 0 || $1 > 63) {self.error(" Minimum strobe :0 cycle - Maximum strobe: 63 cycless")} else {self.WRSTRB3_SETUP = $1, self.CECTL3_VALUE = self.CECTL3_VALUE_update(), "ok"})
  2647.     }
  2648.     inst WRSETUP3_SETUP :: 15 { 
  2649.         prop Label :: "Write Setup Width "
  2650.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2651.         prop Style :: 0x01 | 0x02
  2652.         prop JSName :: "emifbCectl3WriteSetup"
  2653.         prop Visible :: 1
  2654.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2655.         prop NoGen :: 1
  2656.         prop TabName :: "CE3 Space"
  2657.         prop Set :: (if ($1 < 0 || $1 > 15) {self.error(" Minimum setup :0 cycle - Maximum setup: 15 cycles")} else {self.WRSETUP3_SETUP = $1, self.CECTL3_VALUE = self.CECTL3_VALUE_update(), "ok"})
  2658.     }
  2659.     inst WRHLD3_SETUP :: 3 { 
  2660.         prop Label :: "Write Hold Width "
  2661.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2662.         prop Style :: 0x01 | 0x02
  2663.         prop JSName :: "emifbCectl3WriteHold"
  2664.         prop Visible :: 1
  2665.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2666.         prop NoGen :: 1
  2667.         prop TabName :: "CE3 Space"
  2668.         prop Set :: (if ($1 < 0 || $1 > 7) {self.error(" Minimum hold :0 cycle - Maximum hold: 7 cycles")} else {self.WRHLD3_SETUP = $1, self.CECTL3_VALUE = self.CECTL3_VALUE_update(), "ok"})
  2669.     }
  2670.     inst TA3_SETUP :: 3 { 
  2671.         prop Label :: "Turn around time (TA) "
  2672.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2673.         prop Style :: 0x01 | 0x02
  2674.         prop JSName :: "emifbCectl3Ta"
  2675.         prop Visible :: 1
  2676.         prop Writable :: (CSL.EMIFB_SUPPORT)
  2677.         prop NoGen :: 1
  2678.         prop TabName :: "CE3 Space"
  2679.         prop Set :: (if ($1 < 1 || $1 > 3) {self.error(" Minimum: 1 ECLKOU1 cycle - Maximum : 3 ECLKOU1 cycles")} else {self.TA3_SETUP = $1, self.CECTL3_VALUE = self.CECTL3_VALUE_update(), "ok"})
  2680.     }
  2681.     inst SYNCRL0_SETUP :: "2 cycles" { 
  2682.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  2683.         prop Enum :: "0 cycle,1 cycle,2 cycles,3 cycles"
  2684.         prop Label :: "Sync. interf. data read latency (SYNCRL)"
  2685.         prop JSName :: "emifbCesec0Syncrl"
  2686.         prop Visible :: 1
  2687.         prop Writable :: (if (CSL.EMIFB_SUPPORT) {1} else {0})
  2688.         prop NoGen :: 1
  2689.         prop TabName :: "CE0 Space"
  2690.         prop Set :: (self.SYNCRL0_SETUP = $1, self.CESEC0_VALUE = self.CESEC0_VALUE_update(), "ok")
  2691.     }
  2692.     inst SYNCWL0_SETUP :: "0 cycle" { 
  2693.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  2694.         prop Enum :: "0 cycle,1 cycle,2 cycles,3 cycles"
  2695.         prop Label :: "Sync. interf. data write latency (SYNCWL)"
  2696.         prop Visible :: 1
  2697.         prop JSName :: "emifbCesec0Syncwl"
  2698.         prop Writable :: (if (CSL.EMIFB_SUPPORT) {1} else {0})
  2699.         prop NoGen :: 1
  2700.         prop TabName :: "CE0 Space"
  2701.         prop Set :: (self.SYNCWL0_SETUP = $1, self.CESEC0_VALUE = self.CESEC0_VALUE_update(), "ok")
  2702.     }
  2703.     inst CEEXT0_SETUP :: "Inactive" { 
  2704.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  2705.         prop Enum :: "Inactive,Active"
  2706.         prop Label :: "CE Extension Register (CEEXT)"
  2707.         prop JSName :: "emifbCesec0Ceext"
  2708.         prop Visible :: 1
  2709.         prop Writable :: (if (CSL.EMIFB_SUPPORT) {1} else {0})
  2710.         prop NoGen :: 1