📄 .asym_config
字号:
####################################################################
##
## California Advanced Software Tools, Inc.
## Configuring Asym and PASS2
##
## Asym will read a configuration file, if supplied, to configure the CPU
## model, memory, and caches. The configuration file is read once, when
## Asym or PASS2 first initializes.
##
## Locating the Configuration File
##
## Asym will search for the configuration file in the following places:
##
## 1) In the file named in the environment variable ASYM_CONFIG.
##
## 2) In the current directory file .asym_config.
##
## 3) In the home directory file .asym_config, if the HOME
## environment variable is set.
##
## For example, if you have a configuration file you commonly use, you
## might place the following in your .login file (assuming sh or bash):
##
## ASYM_CONFIG=/usr/local/share/asym.cfg
## export ASYM_CONFIG
##
## or Windows environment:
##
## set ASYM_CONFIG=C:\USER\ASYM.CFG
##
## Configuration File Organization
##
## The configuration file consists of a series of commands which specify
## different characteristics of Asym. Each command starts with a command
## word and is followed by a series of one or more attributes, which may
## be specified in any order. An attribute may require a string or
## numeric value. Strings are sequences of letters and numbers, without
## spaces. Numbers may be specified in decimal (the default) or in hex
## by preceding the number with 0x. Numbers may also have a "K" or "k"
## suffix, which means to multiply the number by 1024.
##
## For example,
##
## CPU model=5280
##
## The command word is CPU and there is one attribute, model, which
## specifies a numeric value, 5280.
##
## Command words and attributes may be in either case, or mixed. For the
## previous example, Model or MODEL, or even MoDeL would have been
## equivalent. Command words and attributes may be abbreviated, so long
## as the abreviation cannot be confused with other command words or
## attributes. They must be separated by one or more blanks or tabs and
## blanks may be inserted before or after the equal sign. Anything on a
## line following a pound sign (#) will be considered a comment. A
## command may be continued onto the next line by having a backslash (\)
## as the last non-blank character.
##
## For example,
##
## CPU # specify CPU \
## model = 5280
##
## This would be the same as previous example.
##
####################################################################
####################################################################
##
## CPU -- define cpu type
## mfg=<name> -- Name of CPU manufacturer
## model=<number> -- Model of CPU
## contexts=<number> -- Number of contexts for this core
##
## Define CPU type
##
####################################################################
CPU mfg = Lexra \
model = 5280
####################################################################
##
## CACHE -- define cache memory
## name=<name> -- Name of cache or scratch memory
## instruction -- Instruction cache
## data -- Data cache
## scratch -- Scratch memory
## line-size=<number> -- Size of each line in bytes
## word-size=<number> -- Word size in bytes
## cache-size=<number> -- Cache data size in bytes
## direct -- Direct mapped (1-way) cache
## way=<number> -- Set associative (n-way) cache
## lines=<number> -- Number of lines
## desired -- Access memory starting with desired word
## first -- Access memory starting with first word
## lock -- Support locking cache lines
## LRU -- Maintain least recently used info
## write-back -- Write policy - write dirty lines only
## write-through -- Write policy - always write to memory
## write-alloc -- Allocate cache line on write miss
## write-no-alloc -- Don't allocate cache on write miss
## wait-states=<number> -- Number of wait states on hard miss
##
## There can only be one cache specification for each named cache.
##
####################################################################
cache name=ICACHE inst line-size=16 \
word-size = 4 cache-size = 8192 \
way = 1 first lock LRU
cache name=DCACHE data line-size=16 \
word-size = 4 cache-size = 8192 \
write-through write-alloc \
way = 1 first lock LRU
####################################################################
##
## SCRATCH -- define scratch memory
## name=<name> -- Name of cache or scratch memory
## start=<number> -- Start of scratch memory
## end=<number> -- End of scratch memory
## length=<number> -- Length of scratch memory
##
####################################################################
scratch name = IMEM start = 0x40400000 end = 0x40401fff
scratch name = DMEM start = 0x40510000 end = 0x40511fff
####################################################################
##
## MEMORY -- define physical memory area
## name=<name> -- Name of memory space containing this area
## start=<number> -- Start of memory block
## end=<number> -- End of memory block
## length=<number> -- Size of memory block in bytes
## cache=none -- No cache defined for this memory
## =<name> -- Name of cache used with this memory
## big-endian -- Byte ordering (bit 0 is in LSB)
## little-endian -- Byte ordering (bit 0 is in MSB)
## bus-width=<number> -- Memory access size in BITS
## granularity=<number> -- Minimum read/write size in bytes
## read -- Read enabled
## write -- Write enabled
## execute -- Execute enabled
## wait-states=<number> -- Number of wait states each access
## write-buffers=<number> -- Number of write buffers
##
## Each block of memory is defined in a separate line. There may
## be multiple specifications for the same memory space, but they
## may not define overlapping areas.
##
####################################################################
memory name=main big-endian read write exec wait-states=2 \
bus-width=32 \
start=0 end=0x1000 granularity=1 \
write-buffers=4
####################################################################
##
## OPT -- define run time options
## a boolean value <bool> is a string equal to yes or no.
##
## tag=<bool> -- enable/disable tagging
## dmm=<bool> -- enable/disable direct memory mode (Asym only)
## xaa=<bool> -- enable/disable extended auto allocation
## auto=<bool> -- enable/disable auto allocation
## trap=<bool> -- allow the CPU to take traps
## sfp=<bool> -- use soft floating point emulator
## sys=<bool> -- enable the system call interpreter
## tlb=<bool> -- enable the TLB/MMU if so equipped
##
## log=<string> -- enable logging to named file, or disable if
## string is "off"
## trace=<string> -- enable tracing to named file, or disable if
## string is "off"
##
## Define run time options
##
####################################################################
opt auto=yes trap=yes sys=yes
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -