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 ..
CS ๐ป/์ปดํจํฐ๊ตฌ์กฐ
์ปดํจํฐ์ ๊ธฐ๋ณธ ์ฌ์ดํด์ Fetch - Decode - Excute - Write back ์ด๋ค. ์์๋ก ๋ฉ๋ชจ๋ฆฌ์์ ๋ฐ์ดํฐ๋ฅผ ์ฐ๊ฑฐ๋ ์ฝ์๋(Write back ์์
) 100 ์ธ์ดํด์ด ๊ฑธ๋ฆฌ๊ณ ๋๋จธ์ง ์์
ํ ๋ 1 ์ธ์ดํด์ฉ ๊ฑธ๋ฆฐ๋ค๋ฉด, 10๊ฐ์ ๋ช
๋ น์ด๋ฅผ ์คํํ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์ด ์ธ์ดํด ์๋ 10 * (1+1+1+1000) = 1030 ์ธ์ดํด ์ด๋ค. ํ์ดํ๋ผ์ธ ๋ชฉ์ ์ฒ๋ฆฌ์๋ ํฅ์ ๋ฐฉ๋ฒ ๊ฐ ์ธ์ดํด๋ง๋ค ๊ฐ์ ํด๋ฝ์์์ ์๋ํ๋ค. ๊ฐ์ ์์(๋ฆฌ์์ค)๋ฅผ ๋์์ ์ฌ์ฉํ์ง ์์์ผ ํ๋ค. ์์์๋ IM, Reg, DM, ALU๊ฐ ์๋ค. ๊ธด ์ ๊ทผ์๊ฐ์ ์งง๊ฒ ๋ง๋ค ์ ์๋ค. ํนํ ๋ฉ๋ชจ๋ฆฌ์ ์ ๊ทผ์๊ฐ์ ์งง๊ฒ ๋ง๋ค ์ ์๋ค. ์บ์ ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ์ ํ๋ก์ธ์ ์ฌ์ด์ ์์ ๊ณ ์ ๋ฉ๋ชจ๋ฆฌ ์ฅ์น๋ค. ํ๋ก์ธ์์ ์ฑ๋ฅ์ ํฅ์์ํจ๋ค. ํ๋ฒ ์ฌ์ฉ๋ ์ฝ๋๋ ์ฌ..
I/O๊ธฐ์ I/O ๊ธฐ์ (์
์ถ๋ ฅ ๋ฐฉ๋ฒ)์ Programmed I/O, Interrupt I/O, DMA(Direct Memory Access)๋ก ๋๋ ์ ์๋ค. Programmed I/O ํ๋ก์ธ์๊ฐ I/O๋์์ ์ํ ์ ์ด ํ๋ก๊ทธ๋จ์ ์คํํ๋ค. ํ๋ก๊ทธ๋จ์ด I/O์ฅ์น ์ํ๋ฅผ ์ ์ด์ ํธ๋ก ์ฒดํฌํ๋ค. I/O๊ฐ ์ค๋น๋๋ฉด I/O๋ฅผ ์ํํ๋ค. ์ด๋ ์ค๋น์ ์ํ์ ์ ์ด์ ํธ๋ก ์ฒดํฌํ๋ค. (๋ฐ์ดํฐ๋ฅผ ์ฝ๋ ์์
, ์ฐ๋ ์์
์ ํ ๋ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๊ณ ๋ด๋ณด๋ด๋๊ฑด ์ ์ด์ ํธ๊ฐ ํ์ํ๋ค.) ํ๋ก์ธ์๊ฐ I/O๋ณด๋ค ์๋๊ฐ ๋น ๋ฅด๊ธฐ๋๋ฌธ์ ํ๋ก์ธ์์ ์๊ฐ๋ญ๋น๋ก ์ด์ด์ง ์ ์๋ค. Interrupt I/O I/O์ฅ์น๊ฐ ์ค๋น๋๋ฉด ํ๋ก์ธ์์๊ฒ interrupt ์ ํธ๋ฅผ ์ค์ ์๋ฆฐ๋ค.(์ ์ด์ ํธ ์ฒดํฌ) ํ๋ก์ธ์๋ ์ํํ๊ณ ์๋ ์์
์ ์ค๋จํ๊ณ I/O๋ฅผ ์คํํ..