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

DSP编程

开发平台:

C/C++

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