⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 config.pl

📁 sparc org, vhdl rtl code
💻 PL
📖 第 1 页 / 共 2 页
字号:
#!/usr/bin/perl

%sparc_cfg = (

# Synthesis options 

    CONFIG_CFG_NAME => "config",
    CFG_SYN_TARGET_TECH => "gen",
    CONFIG_SYN_INFER_PADS => 0,
    CONFIG_SYN_INFER_PCI_PADS => 0,
    CONFIG_SYN_INFER_RAM => 0,
    CONFIG_SYN_INFER_ROM => 0,
    CONFIG_SYN_INFER_REGF => 0,
    CONFIG_SYN_INFER_MULT => 0,
    CONFIG_SYN_RFTYPE => 1,
    CONFIG_TARGET_CLK => "gen",
    CONFIG_PLL_CLK_MUL => 1,
    CONFIG_PLL_CLK_DIV => 1,
    CONFIG_PCI_CLKDLL => 0,
    CONFIG_PCI_SYSCLK => 0,
    
# IU options 
    
    CONFIG_IU_NWINDOWS => 8,
    CFG_IU_MUL_TYPE => "none",
    CFG_IU_DIVIDER => "none",
    CONFIG_IU_MUL_MAC => 0,
    CONFIG_IU_MULPIPE => 0,
    CONFIG_IU_FASTJUMP => 0,
    CONFIG_IU_ICCHOLD => 0,
    CONFIG_IU_FASTDECODE => 0,
    CONFIG_IU_RFPOW => 0,
    CONFIG_IU_LDELAY => 1,
    CONFIG_IU_WATCHPOINTS => 0,
    CONFIG_IU_IMPL => 0,
    CONFIG_IU_VER => 0,
    
# FPU config 
    
    CONFIG_FPU_ENABLE => 0,
    CFG_FPU_CORE => "meiko",
    CFG_FPU_IF => "none",
    CONFIG_FPU_REGS => 32,
    CONFIG_FPU_VER => 0,
    
# CP config 
    
    CONFIG_CP_CFG => "cp_none",
    
# cache configuration */
    
    CFG_ICACHE_SZ => 2,
    CFG_ICACHE_LSZ => 16,
    CFG_ICACHE_ASSO => 1,
    CFG_ICACHE_ALGO => "rnd",
    CFG_ICACHE_LOCK => 0,
    CFG_DCACHE_SZ => 1,
    CFG_DCACHE_LSZ => 16,
    CFG_DCACHE_SNOOP => "none",
    CFG_DCACHE_ASSO => 1,
    CFG_DCACHE_ALGO => "rnd",
    CFG_DCACHE_LOCK => 0,
    CFG_DCACHE_RFAST => false,
    CFG_DCACHE_WFAST => false,
    CFG_DCACHE_LRAM  => false,
    CFG_DCACHE_LRSZ => 1,
    CFG_DCACHE_LRSTART => 0x143,
    
# MMU config 
    
    CFG_MMU_ENABLE => 0,
    CFG_MMU_TYPE => "combinedtlb",
    CFG_MMU_REP => "replruarray",
    CFG_MMU_I => 8,
    CFG_MMU_D => 8,
    CFG_MMU_DIAG => 0,
    
# Memory controller config
    
    CONFIG_MCTRL_8BIT => 0,
    CONFIG_MCTRL_16BIT => 0,
    CONFIG_MCTRL_5CS => 0,
    CONFIG_MCTRL_WFB => 0,
    CONFIG_MCTRL_SDRAM => 0,
    CONFIG_MCTRL_SDRAM_INVCLK => 0,
    
# Peripherals 
    CONFIG_PERI_LCONF => 0,
    CONFIG_PERI_AHBSTAT => 0,
    CONFIG_PERI_WPROT => 0,
    CONFIG_PERI_WDOG => 0,
    CONFIG_PERI_IRQ2 => 0,
    
# AHB 
    
    CONFIG_AHB_DEFMST => 0,
    CONFIG_AHB_SPLIT => 0,
    CONFIG_AHBRAM_ENABLE => 0,
    CFG_AHBRAM_SZ => 4,
    
# Debug 
    CONFIG_DEBUG_UART => 0,
    CONFIG_DEBUG_IURF => 0,
    CONFIG_DEBUG_FPURF => 0,
    CONFIG_DEBUG_NOHALT => 0,
    CFG_DEBUG_PCLOW =>  2,
    CONFIG_DEBUG_RFERR =>  0,
    CONFIG_DEBUG_CACHEMEMERR =>  0,
    
# DSU 
    CONFIG_DSU_ENABLE =>  0,
    CONFIG_DSU_TRACEBUF =>  0,
    CONFIG_DSU_MIXED_TRACE =>  0,
    CONFIG_SYN_TRACE_DPRAM =>  0,
    CFG_DSU_TRACE_SZ =>  64,
    
# Boot 
    CFG_BOOT_SOURCE =>  "memory",
    CONFIG_BOOT_RWS =>  0,
    CONFIG_BOOT_WWS =>  0,
    CONFIG_BOOT_SYSCLK =>  25000000,
    CONFIG_BOOT_BAUDRATE =>  19200,
    CONFIG_BOOT_EXTBAUD =>  0,
    CONFIG_BOOT_PROMABITS =>  11,
    
# Ethernet 
    CONFIG_ETH_ENABLE =>  0,
    CONFIG_ETH_TXFIFO =>  8,
    CONFIG_ETH_RXFIFO =>  8,
    CONFIG_ETH_BURST =>  4,
    
# PCI 
    
    CFG_PCI_CORE =>  "none",
    CONFIG_PCI_ENABLE =>  0,
    CONFIG_PCI_VENDORID =>  0,
    CONFIG_PCI_DEVICEID =>  0,
    CONFIG_PCI_SUBSYSID =>  0,
    CONFIG_PCI_REVID =>  0,
    CONFIG_PCI_CLASSCODE =>  0,
    CFG_PCI_FIFO =>  8,
    CONFIG_PCI_PMEPADS =>  0,
    CONFIG_PCI_P66PAD =>  0,
    CONFIG_PCI_RESETALL =>  0,
    CONFIG_PCI_ARBEN =>  0
);

$ahbmst = 1;
$pciahbmst = 0; 
$pciahbslv = 0; 
		



%sparc_map = 
   (
    CFG_SYN_TARGET_TECH => 
    [
	  CONFIG_SYN_GENERIC => "gen",
	  CONFIG_SYN_ATC35 => "atc35",
	  CONFIG_SYN_ATC25 => "atc25",
	  CONFIG_SYN_ATC18 => "atc18",
	  CONFIG_SYN_FS90 => "fs90",
	  CONFIG_SYN_UMC018 => "umc18",
	  CONFIG_SYN_TSMC025 => "tsmc25",
	  CONFIG_SYN_PROASIC => "proasic",
	  CONFIG_SYN_AXCEL => "axcel",
	  CONFIG_SYN_VIRTEX => "virtex",
	  CONFIG_SYN_VIRTEX2 => "virtex2"
    ],

    CONFIG_SYN_INFER_PADS => [ CONFIG_SYN_INFER_PADS => 1 ],
    CONFIG_SYN_INFER_PCI_PADS => [ CONFIG_SYN_INFER_PCI_PADS =>  1 ],
    CONFIG_SYN_INFER_RAM => [ CONFIG_SYN_INFER_RAM => 1 ],
    CONFIG_SYN_INFER_ROM => [ CONFIG_SYN_INFER_ROM => 1 ],
    CONFIG_SYN_INFER_REGF => [ CONFIG_SYN_INFER_REGF => 1 ],
    CONFIG_SYN_INFER_MULT => [ CONFIG_SYN_INFER_MULT => 1 ],
    CONFIG_SYN_RFTYPE => [ CONFIG_SYN_RFTYPE => 2 ],
    CONFIG_SYN_TRACE_DPRAM => [ CONFIG_SYN_TRACE_DPRAM => 1 ],
    CONFIG_TARGET_CLK => 
    [ 
	CONFIG_CLK_VIRTEX => "virtex",
	CONFIG_CLK_VIRTEX2 => "virtex2"
	],
    CONFIG_PLL_CLK_MUL =>
    [ 
	CONFIG_CLKDLL_1_2 => 1,
	CONFIG_CLKDLL_1_1 => 1,
	CONFIG_CLKDLL_2_1 => 2,
	CONFIG_DCM_2_3 => 2,
	CONFIG_DCM_3_4 => 3,
	CONFIG_DCM_4_5 => 4,
	CONFIG_DCM_1_1 => 2,
	CONFIG_DCM_5_4 => 5,
	CONFIG_DCM_4_3 => 4,
	CONFIG_DCM_3_2 => 3,
	CONFIG_DCM_5_3 => 5,
	CONFIG_DCM_2_1 => 2,
	CONFIG_DCM_3_1 => 3,
	CONFIG_DCM_4_1 => 4
	],
    CONFIG_PLL_CLK_DIV => 
    [
	CONFIG_CLKDLL_1_2 => 2,
	CONFIG_CLKDLL_1_1 => 1,
	CONFIG_CLKDLL_2_1 => 2,
	CONFIG_DCM_2_3 => 3,
	CONFIG_DCM_3_4 => 4,
	CONFIG_DCM_4_5 => 5,
	CONFIG_DCM_1_1 => 2,
	CONFIG_DCM_5_4 => 4,
	CONFIG_DCM_4_3 => 3,
	CONFIG_DCM_3_2 => 2,
	CONFIG_DCM_5_3 => 3,
	CONFIG_DCM_2_1 => 1,
	CONFIG_DCM_3_1 => 1,
	CONFIG_DCM_4_1 => 1
	],
    
    CONFIG_PCI_CLKDLL =>  [ CONFIG_PCI_DLL => 1 ],
    CONFIG_PCI_SYSCLK => [ CONFIG_PCI_SYSCLK => 1],
    
    CONFIG_IU_NWINDOWS => [ CONFIG_IU_NWINDOWS => sub { my ($v) = @_; if (($v > 32) || ($v < 1)) { $v = 8; } return $v;} ],   #check_nwin

    CFG_IU_DIVIDER => [ CONFIG_IU_V8MULDIV => "radix2" ],
    
    CFG_IU_MUL_TYPE => [
	CONFIG_IU_MUL_LATENCY_1 => "m32x32",
	CONFIG_IU_MUL_LATENCY_2 => "m32x16",
	CONFIG_IU_MUL_LATENCY_4 => "m16x16",
	CONFIG_IU_MUL_LATENCY_5 => "m16x16",
	CONFIG_IU_MUL_LATENCY_35 => "iterative",
	CONFIG_IU_MUL_MAC => "m16x16"
	],
    
    CONFIG_IU_MULPIPE => [ CONFIG_IU_MUL_LATENCY_5 => 1 ],
    CONFIG_IU_MUL_MAC => [CONFIG_IU_MUL_MAC => 1 ],
    
    
    CONFIG_IU_FASTJUMP => [CONFIG_IU_FASTJUMP => 1 ],
    
    CONFIG_IU_FASTDECODE => [CONFIG_IU_FASTDECODE => 1],
    CONFIG_IU_RFPOW => [CONFIG_IU_RFPOW => 1],
    CONFIG_IU_ICCHOLD =>  [CONFIG_IU_ICCHOLD => 1],
    
    CONFIG_IU_LDELAY => [CONFIG_IU_LDELAY => sub { my ($v) = @_; if (($v > 2) || ($v < 1)) { $v = 2; } return $v;} ],
    
    CONFIG_IU_WATCHPOINTS => [ CONFIG_IU_WATCHPOINTS => sub { my ($v) = @_; if (($v > 4) || ($v < 0)) { $v = 0; } return $v;} ],
    
    CONFIG_IU_IMPL => [ CONFIG_IU_IMPL => sub { my ($v) = @_; $v = hex ($v) & 0xf;  return $v;} ],
    CONFIG_IU_VER => [ CONFIG_IU_VER => sub { my ($v) = @_; $v = hex ($v) & 0xf;  return $v;}],
    
    CONFIG_FPU_ENABLE => [ CONFIG_FPU_ENABLE => 1 ],
    
    CONFIG_FPU_REGS => [ CONFIG_FPU_GRFPU => 0 ],
    CFG_FPU_IF => [ CONFIG_FPU_GRFPU => "parallel" ],
    CFG_FPU_CORE => [
	CONFIG_FPU_GRFPU => "grfpu",
	CONFIG_FPU_MEIKO => "meiko",
	CONFIG_FPU_LTH => "lth"
	],
    
    CONFIG_FPU_VER => [ CONFIG_FPU_VER => sub { my ($v) = @_; $v = hex ($v) & 0x7; return $v;}],
    
    # CP config
    CONFIG_CP_CFG => [CONFIG_CP_CFG => sub { my ($v) = @_; return $v;}],
    
    # cache config 
    CFG_ICACHE_ASSO => [
	CONFIG_ICACHE_ASSO1 => 1,
	CONFIG_ICACHE_ASSO2 => 2,
	CONFIG_ICACHE_ASSO3 => 3,
	CONFIG_ICACHE_ASSO4 => 4 
	],
    CFG_ICACHE_ALGO => [
	CONFIG_ICACHE_ALGORND => "rnd",
	CONFIG_ICACHE_ALGOLRR => "lrr",
	CONFIG_ICACHE_ALGOLRU => "lru"
	],
	
    CFG_ICACHE_LOCK => [ CONFIG_ICACHE_LOCK => 1],
    CFG_ICACHE_SZ => [ 
	CONFIG_ICACHE_SZ1 => 1,
	CONFIG_ICACHE_SZ2 => 2,
	CONFIG_ICACHE_SZ4 => 4,
	CONFIG_ICACHE_SZ8 => 8,
	CONFIG_ICACHE_SZ16 => 16,
	CONFIG_ICACHE_SZ32 => 32,
	CONFIG_ICACHE_SZ64 => 64 
	],
    CFG_ICACHE_LSZ => [ 
	CONFIG_ICACHE_LZ16 => 16,
	CONFIG_ICACHE_LZ32 => 32
	],

    CFG_DCACHE_SZ => [ 
	CONFIG_DCACHE_SZ1 => 1,
	CONFIG_DCACHE_SZ2 => 2,
	CONFIG_DCACHE_SZ4 => 4,
	CONFIG_DCACHE_SZ8 => 8,
	CONFIG_DCACHE_SZ16 => 16,
	CONFIG_DCACHE_SZ32 => 32,
	CONFIG_DCACHE_SZ64 => 64
	],

    CFG_DCACHE_LSZ => [
	CONFIG_DCACHE_LZ16 => 16,
	CONFIG_DCACHE_LZ32 => 32
	],
    
    CFG_DCACHE_SNOOP => [ 
	CONFIG_DCACHE_SNOOP_SLOW => "slow",
	CONFIG_DCACHE_SNOOP_FAST => "fast" 
	],

    CFG_DCACHE_ASSO => [ 
	CONFIG_DCACHE_ASSO1 => 1,
	CONFIG_DCACHE_ASSO2 => 2,
	CONFIG_DCACHE_ASSO3 => 3,
	CONFIG_DCACHE_ASSO4 => 4 
	],
		     
    CFG_DCACHE_ALGO => [ 
	CONFIG_DCACHE_ALGORND => "rnd",
	CONFIG_DCACHE_ALGOLRR => "lrr",
	CONFIG_DCACHE_ALGOLRU => "lru"
	],

    CFG_DCACHE_LOCK => [CONFIG_DCACHE_LOCK => 1 ],
    CFG_DCACHE_RFAST => [CONFIG_DCACHE_RFAST => 1],
    CFG_DCACHE_WFAST => [CONFIG_DCACHE_WFAST => 1],
    CFG_DCACHE_LRAM => [CONFIG_DCACHE_LRAM => 1],

    CFG_DCACHE_LRSZ => [
	CONFIG_DCACHE_LRAM_SZ1 => 1,
	CONFIG_DCACHE_LRAM_SZ2 => 2,
	CONFIG_DCACHE_LRAM_SZ4 => 4,
	CONFIG_DCACHE_LRAM_SZ8 => 8,
	CONFIG_DCACHE_LRAM_SZ16 => 16,
	CONFIG_DCACHE_LRAM_SZ32 => 32,
	CONFIG_DCACHE_LRAM_SZ64 => 64 
	],

    CFG_DCACHE_LRSTART => [ CONFIG_DCACHE_LRSTART => sub { my ($v) = @_; $v = hex ($v) & 0xff;  return $v;}],

    CFG_MMU_ENABLE => [CONFIG_MMU_ENABLE=>1],
    
    CFG_MMU_DIAG => [CONFIG_MMU_DIAG => 1],
    
    CFG_MMU_TYPE => [
	CONFIG_MMU_SPLIT => "splittlb",
	CONFIG_MMU_COMBINED => "combinedtlb"
	],

    CFG_MMU_REP => [ 
	CONFIG_MMU_REPARRAY => "replruarray",
	CONFIG_MMU_REPINCREMENT => "repincrement" 
	],

    CFG_MMU_I => [
	CONFIG_MMU_I1 => 1,
	CONFIG_MMU_I2 => 2,
	CONFIG_MMU_I4 => 4,
	CONFIG_MMU_I8 => 8,
	CONFIG_MMU_I16 => 16,
	CONFIG_MMU_I32 => 32 
	],
	      
    CFG_MMU_D => [
	CONFIG_MMU_D1 => 1,
	CONFIG_MMU_D2 => 2,
	CONFIG_MMU_D4 => 4,
	CONFIG_MMU_D8 => 8,
	CONFIG_MMU_D16 => 16,

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -