728x90
ARM ์ ๊ฐ์
- RISC ๋จธ์ ๊ธฐ๋ฐ์ด๋ค.( 32๋นํธ์ RISC ์ํคํ ์ฒ)
- ๋จ์ํ ๋์์ธ, ์ ์ ๋ช ๋ น์ด ์ธํธ๋ฅผ ๊ฐ์ง๊ณ ์๋ค.
- ์ ๋ ฅ์ ์ ๊ฒ ์ฐ๊ณ ๊ฐ๊ฒฉ๋ ์ธ๋ค.
- ๋์ฉ๋ ๋ฒ์ฉ ๋ ์ง์คํฐ ํ์ผ์ ๊ฐ์ง๋ค.
- load/store ์ํคํ
์ฒ๋ค.
- load/ store ๋ช ๋ น์ด๋ ๋ฐ์ดํฐ๋ฅผ ์ฎ๊ธฐ๋ ๋ช ๋ น์ด๋ค.
- ๋ ์ง์คํฐ์ ๊ฐ๋ง ์ด์ฉํ์ฌ ํ๋ก์ธ์ฑํ๋ค.
- ๋ช ๋ น์ด์ ๊ธธ์ด๋ 32๋นํธ๋ก ๊ณ ์ ๋์ด์๋ค.
- ARM์์ byte๋ 8bit, halfword๋ 16bit, word๋ 32bit์ ํฌ๊ธฐ๋ฅผ ๊ฐ์ง๋ค.
- ARM์์ ๋ช ๋ น์ด๋ 32๋นํธ์ ARM ๋ช ๋ น์ด ์ธํธ๋ 16๋นํธ์ Thumb ๋ช ๋ น์ด ์ธํธ๋ฅผ ๊ตฌํํ๋ค.
- Jazelle ์ฝ์ด๋ค์ ์๋ฐ ๋ฐ์ดํธ ์ฝ๋๋ฅผ ๊ตฌํํ ์ ์๋ค.
ARM์์์ ๋ ์ง์คํฐ
์ฝ์ด์ 37๊ฐ ๋ ์ง์คํฐ
- 1๊ฐ์ PC
- 1๊ฐ์ CPSR(Current Program Status Register : ํ์ฌ ํ๋ก๊ทธ๋จ์ ์ํ๋ฅผ ๋ํ๋ด๋ ๋ ์ง์คํฐ)
- 5๊ฐ์ SPSR(Save Program Status Register : CPSR๊ฐ์ ์ ์ฅํด๋๋ ์ญํ . CPSR์ ๋ฐฑ์ ํ ๋(privileged mode) ์ฌ์ฉ๋๋ค.)
- 30๊ฐ์ ๋ฒ์ฉ ๋ ์ง์คํฐ
CPSR 16๊ฐ ๋ ์ง์คํฐ์์ ๊ด๊ณ(r0 ~ r15)
- ๋ชจ๋ ๋ ์ง์คํฐ๋ 32๋นํธ๋ก ์์ ๋๋ค.
- PC๋ r15, ์คํ ํฌ์ธํฐ๋ r13, link register์ r14์ ์ฐ์ธ๋ค.
Operation ๋ชจ๋
- User : ๋๋ถ๋ถ์ ์์ ์ด ์คํ๋๋ ๋นํน๊ถ ๋ชจ๋๋ค.
- FIQ : ๋์ ์ฐ์ ์์์ interrupt๊ฐ ๋ฐ์ํ ๋ ์ ๋ ฅ๋๋ค.
- IRQ : ๋ฎ์ ์ฐ์ ์์์ interrupt๊ฐ ๋ฐ์ํ ๋ ์ ๋ ฅ๋๋ค.
- Supervisor : ์ฌ์ค์ ์ ๋๋ SW interrupt ๋ช ๋ น์ด ์คํ๋ ๋ ์ ๋ ฅ๋๋ค.
- Abort : ๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ ์๋ฐ์ ์ฒ๋ฆฌํ๋๋ฐ ์ฌ์ฉ๋๋ค.
- Undef : ์ ์๋์ง ์์ ๋ช ๋ น์ด๋ฅผ ์ฒ๋ฆฌํ๋๋ฐ ์ฌ์ฉ๋๋ค.
- System : ์ฌ์ฉ์(User)๋ชจ๋์ ๋์ผํ ๋ ์ง์คํฐ๋ฅผ ์ฌ์ฉ
CPSR์ ํ์
- N : ๊ฒฐ๊ณผ๊ฐ์ด negative์
- Z : ๊ฒฐ๊ณผ๊ฐ์ด 0์
- C : ๊ฒฐ๊ณผ๊ฐ์ carry-out ์์
- V : ๊ฒฐ๊ณผ๊ฐ ์ฐ์ ๊ณ์ฐํ๋๋ฐ ์ค๋ฒํ๋ก์ฐ ๋ฐ์
- I : 1๋ก ์ค์ ๋๋ฉด IRQ ๋นํ์ฑํ
- F : 1๋ก ์ค์ ๋๋ฉด FIQ ๋นํ์ฑํ
- T : 1๋ก ์ค์ ๋๋ฉด ํ๋ก์ธ์๊ฐ Thumb ์ํ, 0์ผ๋ก ์ค์ ๋๋ฉด ํ๋ก์ธ์๊ฐ ARM ์ํ
- OP mode : ํ๋ก์ธ์ ๋ชจ๋๋ฅผ ๊ตฌ์ฒด์ ์ผ๋ก ์ค์
728x90
'CS ๐ป > ์ปดํจํฐ๊ตฌ์กฐ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ์ดํ๋ผ์ธ (2) | 2024.03.17 |
---|---|
I/O & Interrupt (0) | 2024.03.14 |