VLSI Wiki
Contents:
  1. AMBA Bus
    1. 1. Definition: What is AMBA Bus?
    2. 2. Components and Operating Principles
      1. 2.1 AHB (Advanced High-performance Bus)
      2. 2.2 APB (Advanced Peripheral Bus)
      3. 2.3 AXI (Advanced eXtensible Interface)
    3. 3. Related Technologies and Comparison
      1. 3.1 AMBA Bus vs. Wishbone Bus
      2. 3.2 AMBA Bus vs. PCI Express
    4. 4. References
    5. 5. One-line Summary

AMBA Bus

1. Definition: What is AMBA Bus?

AMBA Bus(Advanced Microcontroller Bus Architecture)๋Š” ARM์—์„œ ๊ฐœ๋ฐœํ•œ ์‹œ์Šคํ…œ ์˜จ ์นฉ(SoC) ์„ค๊ณ„๋ฅผ ์œ„ํ•œ ํ‘œ์ค€ํ™”๋œ ๋ฒ„์Šค ์•„ํ‚คํ…์ฒ˜์ž…๋‹ˆ๋‹ค. ์ด ์•„ํ‚คํ…์ฒ˜๋Š” ๋‹ค์–‘ํ•œ ์ปดํฌ๋„ŒํŠธ ๊ฐ„์˜ ํšจ์œจ์ ์ธ ๋ฐ์ดํ„ฐ ์ „์†ก์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๋ฉฐ, ํŠนํžˆ VLSI ์„ค๊ณ„์—์„œ ๋„๋ฆฌ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. AMBA Bus๋Š” ํ”„๋กœ์„ธ์„œ, ๋ฉ”๋ชจ๋ฆฌ, ์ฃผ๋ณ€ ์žฅ์น˜ ๊ฐ„์˜ ํ†ต์‹ ์„ ์œ„ํ•œ ๊ตฌ์กฐ๋ฅผ ์ œ๊ณตํ•˜์—ฌ ์„ค๊ณ„ ๋ณต์žก์„ฑ์„ ์ค„์ด๊ณ , ์‹œ์Šคํ…œ์˜ ์„ฑ๋Šฅ์„ ๊ทน๋Œ€ํ™”ํ•˜๋Š” ๋ฐ ๊ธฐ์—ฌํ•ฉ๋‹ˆ๋‹ค.

AMBA Bus์˜ ์ฃผ์š” ํŠน์ง• ์ค‘ ํ•˜๋‚˜๋Š” ๋‹ค์–‘ํ•œ ์ „์†ก ํ”„๋กœํ† ์ฝœ์„ ์ง€์›ํ•˜์—ฌ, ์‹œ์Šคํ…œ ์„ค๊ณ„์ž๊ฐ€ ํŠน์ • ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์— ๋งž๊ฒŒ ์ตœ์ ํ™”๋œ ํ†ต์‹  ๋ฐฉ๋ฒ•์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•œ๋‹ค๋Š” ์ ์ž…๋‹ˆ๋‹ค. AMBA Bus๋Š” ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ๋ฒ„์ „์ด ์žˆ์œผ๋ฉฐ, ๊ฐ ๋ฒ„์ „์€ ํŠน์ • ์š”๊ตฌ ์‚ฌํ•ญ์„ ์ถฉ์กฑํ•˜๊ธฐ ์œ„ํ•ด ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, AMBA 2.0์€ AHB(Advanced High-performance Bus), APB(Advanced Peripheral Bus), ASB(Advanced System Bus)์™€ ๊ฐ™์€ ๋‹ค์–‘ํ•œ ๋ฒ„์Šค๋ฅผ ํฌํ•จํ•˜์—ฌ, ๊ฐ๊ฐ์˜ ์‚ฌ์šฉ ์‚ฌ๋ก€์— ๋งž๋Š” ์ตœ์ ์˜ ์„ฑ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

AMBA Bus๋Š” ๋˜ํ•œ ๋ชจ๋“ˆํ™”๋œ ์„ค๊ณ„๋ฅผ ์ด‰์ง„ํ•˜์—ฌ, ์„ค๊ณ„์ž๋“ค์ด ๊ธฐ์กด์˜ ์ปดํฌ๋„ŒํŠธ๋ฅผ ์žฌ์‚ฌ์šฉํ•˜๊ณ , ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์„ ์‰ฝ๊ฒŒ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์‹œ์Šคํ…œ์˜ ๊ฐœ๋ฐœ ์‹œ๊ฐ„์„ ๋‹จ์ถ•์‹œํ‚ค๊ณ , ๋น„์šฉ์„ ์ ˆ๊ฐํ•˜๋Š” ๋ฐ ํฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. AMBA Bus์˜ ์ด๋Ÿฌํ•œ ํŠน์„ฑ์€ ํŠนํžˆ ๋ณต์žกํ•œ ๋””์ง€ํ„ธ ํšŒ๋กœ ์„ค๊ณ„์—์„œ ์ค‘์š”ํ•œ ์—ญํ• ์„ ํ•˜๋ฉฐ, ๋†’์€ ์„ฑ๋Šฅ๊ณผ ๋‚ฎ์€ ์ „๋ ฅ ์†Œ๋น„๋ฅผ ๋™์‹œ์— ๋‹ฌ์„ฑํ•˜๋Š” ๋ฐ ๊ธฐ์—ฌํ•ฉ๋‹ˆ๋‹ค.

2. Components and Operating Principles

AMBA Bus๋Š” ์—ฌ๋Ÿฌ ์ฃผ์š” ์ปดํฌ๋„ŒํŠธ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์œผ๋ฉฐ, ์ด๋“ค ๊ฐ„์˜ ์ƒํ˜ธ์ž‘์šฉ์„ ํ†ตํ•ด ํšจ์œจ์ ์ธ ๋ฐ์ดํ„ฐ ์ „์†ก์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค. ์ฃผ์š” ๊ตฌ์„ฑ ์š”์†Œ์—๋Š” AHB, APB, ๊ทธ๋ฆฌ๊ณ  AXI(Advanced eXtensible Interface)๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ๊ฐ ๋ฒ„์Šค์˜ ์ž‘๋™ ์›๋ฆฌ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

2.1 AHB (Advanced High-performance Bus)

AHB๋Š” ๊ณ ์„ฑ๋Šฅ ์‹œ์Šคํ…œ์—์„œ ์ฃผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ๋ฒ„์Šค๋กœ, ๋†’์€ ๋Œ€์—ญํญ๊ณผ ๋‚ฎ์€ ์ง€์—ฐ ์‹œ๊ฐ„์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. AHB๋Š” ๋‹ค์ค‘ ๋งˆ์Šคํ„ฐ์™€ ๋‹ค์ค‘ ์Šฌ๋ ˆ์ด๋ธŒ ๊ตฌ์กฐ๋ฅผ ์ง€์›ํ•˜์—ฌ, ์—ฌ๋Ÿฌ ํ”„๋กœ์„ธ์„œ๊ฐ€ ๋™์‹œ์— ์‹œ์Šคํ…œ ์ž์›์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. AHB๋Š” ๋˜ํ•œ Burst ์ „์†ก์„ ์ง€์›ํ•˜์—ฌ, ์—ฐ์†์ ์ธ ๋ฐ์ดํ„ฐ ์ „์†ก์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜์—ฌ ์„ฑ๋Šฅ์„ ๋”์šฑ ํ–ฅ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค.

2.2 APB (Advanced Peripheral Bus)

APB๋Š” ์ €์ „๋ ฅ ์†Œ๋น„์™€ ๊ฐ„๋‹จํ•œ ์„ค๊ณ„๋ฅผ ์š”๊ตฌํ•˜๋Š” ์ฃผ๋ณ€ ์žฅ์น˜์™€์˜ ํ†ต์‹ ์„ ์œ„ํ•ด ์„ค๊ณ„๋œ ๋ฒ„์Šค์ž…๋‹ˆ๋‹ค. APB๋Š” ์ƒ๋Œ€์ ์œผ๋กœ ๋‚ฎ์€ ๋ฐ์ดํ„ฐ ์ „์†ก ์†๋„๋ฅผ ์ œ๊ณตํ•˜์ง€๋งŒ, ๋‹จ์ˆœํ•œ ๊ตฌ์กฐ ๋•๋ถ„์— ์„ค๊ณ„๊ฐ€ ์šฉ์ดํ•˜๊ณ  ์ „๋ ฅ ์†Œ๋น„๊ฐ€ ์ ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ๋ฐฐํ„ฐ๋ฆฌ๋กœ ์ž‘๋™ํ•˜๋Š” ์žฅ์น˜์—์„œ ์ค‘์š”ํ•œ ์š”์†Œ์ž…๋‹ˆ๋‹ค.

2.3 AXI (Advanced eXtensible Interface)

AXI๋Š” AMBA์˜ ์ตœ์‹  ๋ฒ„์ „์œผ๋กœ, ๊ณ ์† ๋ฐ์ดํ„ฐ ์ „์†ก์„ ์œ„ํ•œ ๋น„๋™๊ธฐ์‹ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. AXI๋Š” ๋†’์€ ๋Œ€์—ญํญ๊ณผ ๋‚ฎ์€ ์ง€์—ฐ ์‹œ๊ฐ„์„ ์ œ๊ณตํ•˜๋ฉฐ, ๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ ์ „์†ก ๋ฐฉ์‹(Burst, Split, Out-of-Order)๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. AXI์˜ ์„ค๊ณ„๋Š” ๋†’์€ ์„ฑ๋Šฅ์„ ์š”๊ตฌํ•˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ ํ•ฉํ•˜๋ฉฐ, ๋ณต์žกํ•œ ์‹œ์Šคํ…œ์—์„œ์˜ ์œ ์—ฐ์„ฑ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

AMBA Bus์˜ ๊ฐ ๊ตฌ์„ฑ ์š”์†Œ๋Š” ํŠน์ •ํ•œ ์š”๊ตฌ ์‚ฌํ•ญ์„ ์ถฉ์กฑํ•˜๋„๋ก ์„ค๊ณ„๋˜์—ˆ์œผ๋ฉฐ, ์ด๋“ค ๊ฐ„์˜ ์ƒํ˜ธ์ž‘์šฉ์€ ์‹œ์Šคํ…œ ์ „์ฒด์˜ ์„ฑ๋Šฅ๊ณผ ํšจ์œจ์„ฑ์„ ๊ฒฐ์ •์ง“๋Š” ์ค‘์š”ํ•œ ์š”์†Œ์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ตฌ์กฐ์  ์„ค๊ณ„๋Š” ๋””์ง€ํ„ธ ํšŒ๋กœ ์„ค๊ณ„์—์„œ์˜ ๋ณต์žก์„ฑ์„ ์ค„์ด๊ณ , ๋‹ค์–‘ํ•œ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์— ์ ํ•ฉํ•œ ์†”๋ฃจ์…˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

AMBA Bus๋Š” ์—ฌ๋Ÿฌ ๋‹ค๋ฅธ ๋ฒ„์Šค ์•„ํ‚คํ…์ฒ˜์™€ ๋น„๊ต๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๊ฐ ์•„ํ‚คํ…์ฒ˜๋Š” ํŠน์ •ํ•œ ์žฅ์ ๊ณผ ๋‹จ์ ์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, AMBA Bus์™€ Wishbone Bus๋ฅผ ๋น„๊ตํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

3.1 AMBA Bus vs. Wishbone Bus

Wishbone Bus๋Š” ์˜คํ”ˆ ์†Œ์Šค ํ•˜๋“œ์›จ์–ด ์„ค๊ณ„์— ์ฃผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ๋ฒ„์Šค ์•„ํ‚คํ…์ฒ˜์ž…๋‹ˆ๋‹ค. AMBA Bus๋Š” ARM์˜ ์†Œ์†์œผ๋กœ, ์ƒ์—…์ ์ธ ์ œํ’ˆ์— ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ๋ฐ˜๋ฉด, Wishbone์€ ์ž์œ ๋กญ๊ฒŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์„ค๊ณ„ ํ‘œ์ค€์ž…๋‹ˆ๋‹ค. AMBA๋Š” ๊ณ ์„ฑ๋Šฅ์„ ์ž๋ž‘ํ•˜์ง€๋งŒ, ์„ค๊ณ„ ๋ณต์žก์„ฑ์ด ๋†’๊ณ  ๋ผ์ด์„ผ์Šค ๋น„์šฉ์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด Wishbone์€ ์„ค๊ณ„๊ฐ€ ๊ฐ„๋‹จํ•˜๊ณ  ๋น„์šฉ์ด ์ ๊ฒŒ ๋“ค์ง€๋งŒ, ์„ฑ๋Šฅ ๋ฉด์—์„œ๋Š” AMBA์— ๋น„ํ•ด ๋–จ์–ด์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

3.2 AMBA Bus vs. PCI Express

PCI Express๋Š” ์ฃผ๋กœ ์ปดํ“จํ„ฐ ์‹œ์Šคํ…œ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๊ณ ์† ์ง๋ ฌ ํ†ต์‹  ๋ฒ„์Šค์ž…๋‹ˆ๋‹ค. AMBA Bus๋Š” SoC ์„ค๊ณ„๋ฅผ ์œ„ํ•ด ์ตœ์ ํ™”๋œ ๋ฐ˜๋ฉด, PCI Express๋Š” ๋ฐ์ดํ„ฐ ์ „์†ก ์†๋„๊ฐ€ ๋งค์šฐ ๋น ๋ฅด์ง€๋งŒ, ๋ณต์žกํ•œ ํ”„๋กœํ† ์ฝœ์„ ํ•„์š”๋กœ ํ•ฉ๋‹ˆ๋‹ค. AMBA Bus๋Š” ์ €์ „๋ ฅ ์„ค๊ณ„์— ์œ ๋ฆฌํ•˜๋ฉฐ, ๋‹ค์–‘ํ•œ ์ฃผ๋ณ€ ์žฅ์น˜์™€์˜ ํ†ต์‹ ์— ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด PCI Express๋Š” ๋Œ€๋Ÿ‰์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋น ๋ฅด๊ฒŒ ์ „์†กํ•ด์•ผ ํ•˜๋Š” ํ™˜๊ฒฝ์—์„œ ๋” ์œ ๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ๋น„๊ต๋ฅผ ํ†ตํ•ด AMBA Bus๋Š” SoC ์„ค๊ณ„์—์„œ์˜ ์œ ์—ฐ์„ฑ๊ณผ ์„ฑ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ๋ฐ˜๋ฉด, ๋‹ค๋ฅธ ๋ฒ„์Šค ์•„ํ‚คํ…์ฒ˜๋Š” ํŠน์ •ํ•œ ์š”๊ตฌ ์‚ฌํ•ญ์— ๋งž์ถฐ ์ตœ์ ํ™”๋œ ์†”๋ฃจ์…˜์„ ์ œ๊ณตํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

4. References

  • ARM Holdings
  • IEEE (Institute of Electrical and Electronics Engineers)
  • International Society for Semiconductor Technology

5. One-line Summary

AMBA Bus๋Š” ARM์—์„œ ๊ฐœ๋ฐœํ•œ ๊ณ ์„ฑ๋Šฅ ์‹œ์Šคํ…œ ์˜จ ์นฉ ์„ค๊ณ„๋ฅผ ์œ„ํ•œ ํ‘œ์ค€ํ™”๋œ ๋ฒ„์Šค ์•„ํ‚คํ…์ฒ˜๋กœ, ๋‹ค์–‘ํ•œ ์ปดํฌ๋„ŒํŠธ ๊ฐ„์˜ ํšจ์œจ์ ์ธ ํ†ต์‹ ์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•œ๋‹ค.