반응형
Oracle SPARC Architecture 2011에서 발췌
Sparc V9을 기준으로 설명하고있다.
- ASI Value(sparc v9)
- range = 0x00 ~ 0xFF
- restricted range = ~0x7F
unrestricted range = 0x80~0xFF - ASI (sparc v7)
- 8bit value , identifies a particular address space
- 모든 명령의 실행에 관여 --> 실제로 확인을 해보니 asi가 사용되는 명령의 사용이 없었다.
결 론 : 실행되는 모든 명령에서 asi(address space identifier)를 사용하게 된다. 따라서 실행되는 명령의 decode 과정에서 asi를 확인하고 이 asi의 변화에 따라서 task의 실행을 detect하면 된다!
Sparc V7에서 asi를 사용하는 instruction
명령
31-30
29-25
24-19
18-14
13
12-5
4-0
LDA
11
rd
010000
rs1
i=0
asi
rs2
LDDA
11
rd
010011
rs1
i=0
asi
rs2
LDSBA
11
rd
011001
rs1
i=0
asi
rs2
LDSHA
11
rd
011010
rs1
i=0
asi
rs2
LDSTUBA
11
rd
011101
rs1
i=0
asi
rs2
LDUBA
11
rd
010001
rs1
i=0
asi
rs2
LUDHA
11
rd
010010
rs1
i=0
asi
rs2
STA
11
rd
010100
rs1
i=0
asi
rs2
STBA
11
rd
010101
rs1
i=0
asi
rs2
STDA
11
rd
010111
rs1
i=0
asi
rs2
STHA
11
rd
010110
rs1
i=0
asi
rs2
SWAPA
11
rd
011111
rs1
i=0
asi
rs2
- Memory Controller(MEC)signal - ERC32 memspec
- mec signal에서 보면 asi를 확인하는 signal이 존재한다.
- 4bit으로 구성되는 address space identifier를 사용해서 메모리의 어느 구역을 접근할지를 결정한다.
반응형
'지난일들 > SPARC' 카테고리의 다른 글
ULTRA sparc - Context ID (0) | 2014.03.04 |
---|---|
context number 확인하기 (0) | 2014.02.26 |
SPARC 메모리 구조 - context (0) | 2013.08.29 |