Tải bản đầy đủ (.pdf) (87 trang)

Nghiên cứu, thiết kế và thực hiện bus truyền thông tốc độ cao AMBA AHB

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.66 MB, 87 trang )

ðẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ðẠI HỌC CÔNG NGHỆ





Phan Hải Phong





NGHIÊN CỨU, THIẾT KẾ VÀ THỰC HIỆN BUS
TRUYỀN THÔNG TỐC ðỘ CAO AMBA AHB










LUẬN VĂN THẠC SỸ
















Hà Nội - 2009
iii

MỤC LỤC
DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT v

DANH MỤC CÁC BẢNG vi

DANH MỤC CÁC HÌNH VẼ, ðỒ THỊ vii

GIỚI THIỆU CHUNG 1

Chương 1

Hệ thống trên chip và vấn ñề truyền thông trên chip 2

1.1. Hệ thống trên chip - lịch sử và xu thế phát triển 2
1.2. Tổng quan về phương pháp thiết kế hệ thống trên chip 6
1.3. Vấn ñề truyền thông trên chip 10
Chương 2


Hệ thống bus AMBA AHB 13

2.1. Tổng quan về hệ thống bus tốc ñộ cao AMBA AHB 13
2.2. Mô hình và hoạt ñộng chung của bus AMBA AHB 15
2.2.1. Mô hình một hệ thống AMBA AHB 15
2.2.2. Hoạt ñộng của hệ thống AMBA AHB 17
2.3. Các chế ñộ truyền của bus AMBA AHB 18
2.3.1. Quá trình truyền cơ bản, không có trạng thái ñợi 18
2.3.2. Quá trình truyền cơ bản, có trạng thái ñợi 19
2.3.3. Quá trình truyền theo khối (burst transfer) 20
2.3.4. Thông báo về quá trình truyền của bus chủ 22
2.3.5. Phân chia một quá trình truyền 23
2.4. Hoạt ñộng phân xử bus 24
2.5. Phản hồi truyền của Slave 25
Chương 3

Xây dựng và mô hình hoá hệ thống bus AMBA AHB 28

3.1. Bài toán thiết kế và mô hình ñề xuất 28
3.1.1. Mô hình phân quyền của bộ phân xử bus 31
3.1.2. Mô hình giao tiếp giữa bus chủ và lõi IP 33
3.1.3. Mô hình giao tiếp giữa bus tớ và lõi IP 34
3.2. Bus chủ 35
3.2.1. Các tín hiệu trên bus chủ 35
3.2.2. Máy trạng thái mô tả hoạt ñộng của bus chủ 38
3.3. Bus tớ 43
3.3.1. Các tín hiệu trên bus tớ 43
3.3.2. Máy trạng thái mô tả hoạt ñộng của bus tớ 45
3.4. Bộ phân xử 51

iv

3.4.1. Các tín hiệu của bộ phân xử 51
3.4.2. Máy trạng thái mô tả hoạt ñộng của bộ phân xử 52
3.5. Bộ giải mã ñịa chỉ và các bộ phân kênh 54
3.5.1. Bộ giải mã ñịa chỉ 54
3.5.2. Bộ phân kênh từ bus chủ ñến bus tớ 55
3.5.3. Bộ phân kênh từ bus tớ ñến bus chủ 55
Chương 4

Kiểm chứng, ñánh giá và thực thi mô hình hệ thống 56

4.1. Phương pháp kiểm tra ñánh giá mô hình 56
4.2. Mô phỏng và kiểm chứng mô hình bằng ModelSim 58
4.2.1. Kiểm tra hoạt ñộng truyền thông ñơn giản của mô hình 58
4.2.2. Kiểm tra hoạt ñộng truyền khối khi có các phản hồi truyền 63
4.3. ðánh giá hệ thống sau khi thực thi phần cứng 71
KẾT LUẬN 77

TÀI LIỆU THAM KHẢO 79


v

DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT
Viết tắt Viết ñầy ñủ
ADC
Analog - Digital Converter
AHB
Advanced High-performance Bus

AMBA
Advanced Microcontroller Bus Architecture
APB
Advanced Peripheral Bus
ASB
Advanced System Bus
ASIC
Application-Specific Integrated Circuit
AXI
Advanced eXtensible Interface
DAC
Digital - Analog Converter
DSP
Digital Signal Processing
FPGA
Field-Programmable Gate Array
HDL
Hardware Description Language
IC
Integrated Circuit
IOB
Input/Output Buffer
IP
Intellectual Property
LCD
Liquid Crystal Display
LUT
Look Up Table
NoC
Network on Chip

RAM
Random - Access Memory
ROM
Read - Only Memory
RTL
Register Transfer Level
SoC
System on Chip
SPI
Serial Peripheral Interface
USART

Universal Asynchronous Receiver/Transmitter
VHDL
Very-High-Speed-Integrated-Circuit Hardware Description
Language

vi


DANH MỤC CÁC BẢNG
Bảng 1. Các kiểu truyền khối ñược bus AHB hỗ trợ 20

Bảng 2. Các kiểu truyền trong hệ thống bus AHB 22

Bảng 3. Tín hiệu phản hồi truyền từ bus tớ 25

Bảng 4. Số lượng bộ xử lý logic ñược sử dụng trong hệ thống bus 72

Bảng 5. Số lượng tài nguyên phần cứng ñã sử dụng 73


Bảng 6. Tài nguyên phần cứng sử dụng sau khi ñược tổng hợp tối ưu về hiệu năng vật
lý 75


vii

DANH MỤC CÁC HÌNH VẼ, ðỒ THỊ
Hình 1. Kiến trúc cơ bản của một Hệ thống trên chip (SoC). 3
Hình 2. Cấu trúc của một vi ñiều khiển ARM ñược xây dựng theo kiến trúc SoC [22]. . 3
Hình 3. Kiến trúc của chip OMAP 4[24]. 5
Hình 4. Quy trình thiết kế chip cơ bản. 6
Hình 5. Mô hình các phương pháp thiết kế SoC. 9
Hình 6. Mô hình kết nối ñiểm-tới-ñiểm. 10
Hình 7. Kiến trúc bus chia sẻ, phân tầng. 11
Hình 8. Mô hình cơ bản của một hệ NoC. 12
Hình 9. Mô hình vi xử lý có sử dụng bus AHB [1]. 14
Hình 10. Lõi PiP AMBA của công ty CAST [28]. 15
Hình 11. Sơ ñồ kết nối giữa các thành phần bên trong bus AHB [1]. 16
Hình 12. Quá trình truyền cơ bản trên bus AHB [1]. 19
Hình 13. Quá trình truyền cơ bản có trạng thái ñợi [1]. 19
Hình 14. Ảnh hưởng của trạng thái ñợi ñến pha ñịa chỉ của quá trình tiếp theo [1]. 20
Hình 15. Truyền khối tăng với nhịp 4 [1]. 21
Hình 16. Truyền khối cuộn với nhịp 8 [1]. 22
Hình 17. Quá trình truyền có phản hồi truyền ERROR [1]. 27
Hình 18. Quá trình truyền có phản hồi RETRY [1]. 27
Hình 19. Mô hình kiến trúc hệ thống COMOSY. 28
Hình 20. Mô hình của hệ thống bus AHB ñược ñề xuất 31
Hình 21. Tín hiệu bắt tay giữa bus chủ và lõi IP. 33
Hình 22. Tín hiệu bắt tay giữa bus tớ và lõi IP. 34

Hình 23. Các tín hiệu trên bus chủ. 35
Hình 24. Sơ ñồ máy trạng thái của bus chủ 38
Hình 25. Giản ñồ xung minh họa quá trình SPLIT trên bus chủ. 41
Hình 26. Giản ñồ xung minh họa quá trình RETRY trên bus chủ. 42
Hình 27. Các tín hiệu trên bus tớ. 43
Hình 28. Sơ ñồ máy trạng thái của bus tớ. 46
Hình 29. Giản ñồ xung minh họa quá trình RETRY trên bus tớ. 49
Hình 30. Giản ñồ xung minh họa quá trình SPLIT trên bus tớ. 50
Hình 31.Các tín hiệu trên bộ phân xử. 51
Hình 32. Sơ ñồ máy trạng thái của bộ phân xử. 53
Hình 33. Các tín hiệu trên bộ giải mã ñịa chỉ. 55
Hình 34. Sơ ñồ khối của quá trình mô phỏng kiểm tra hệ thống. 57
Hình 35. Sử dụng ModelSim và ISE Foundation Suite trong từng bước thiết kế. 58
Hình 36. Kết quả mô phỏng hệ thống bus với quá trình truyền khối tăng nhịp 4. 60
Hình 37. Kết quả mô phỏng với quá trình truyền khối cuộn nhịp 8. 62
Hình 38. Kết quả mô phỏng với quá trình truyền có phản hồi RETRY. 64
Hình 39. Kết quả mô phỏng với quá trình truyền có phản hồi truyền SPLIT. 67
Hình 40. Kết quả mô phỏng với quá trình truyền khối có phản hồi truyền ERROR. 70
Hình 41. Tỷ lệ sử dụng các kiểu tài nguyên của từng khối chức năng. 74
1

GIỚI THIỆU CHUNG
Sự phát triển của công nghệ bán dẫn cho phép tích hợp ngày càng nhiều
transistor trên một ñơn vị diện tích. Theo ñịnh luật Moore, số lượng transistor
trên một inch vuông sẽ tăng gấp ñôi sau mỗi chu kỳ hai năm. ðiều này cho phép
các nhà sản xuất phát triển các mạch tích hợp (integrated circuit) với kích thước
ngày càng nhỏ và ñộ tích hợp ngày càng tăng. Các hệ thống ñiện tử phức tạp và
cồng kềnh nay ñã có thể thu nhỏ lên trên một chip ñơn mà vẫn giữ ñược các tính
năng tương tự trong khi hiệu năng hoạt ñộng ñược nâng cao. Từ ñó ra ñời khái
niệm “Hệ thống trên chip” (System-on-Chip) ñể chỉ việc tích hợp các khối chức

năng khác nhau trên một chip ñơn thay cho một hệ thống gồm các thành phần
riêng lẻ. ðiều này không chỉ ñáp ứng ñược sự phát triển của các thiết bị ñiện tử
tích hợp nhỏ gọn mà còn nâng cao ñộ tin cậy trong quá trình hoạt ñộng của các
thiết bị ñó. Không những thế, giá thành và thời gian cần thiết ñể phát triển các
thiết bị này cũng ñược giảm ñi rất nhiều, nhờ vào việc tái sử dụng các khối chức
năng khác nhau ñã ñược phát triển từ trước, hoặc bởi các nhóm phát triển khác
nhau.
Việc tích hợp ngày càng nhiều các khối chức năng trên một hệ thống ñơn
chip dẫn ñến một yêu cầu cấp thiết là việc giải quyết vấn ñề truyền thông giữa
các khối chức năng. ðể ñáp ứng yêu cầu này, nhiều phương thức truyền thông
giữa các chip ñã ra ñời như truyền thông theo dạng kết nối ñiểm-tới-ñiểm, bus
truyền thống hay các phương thức tiên tiến hơn như “Mạng trên chip” (Network-
on-Chip). Tuy vậy, phương thức truyền thông bus hiện vẫn ñang là phương thức
truyền thông ñược sử dụng phổ biến vì tính ñơn giản, thuận tiện của nó. Hơn nữa,
các thế hệ bus tiên tiến vẫn có thể ñáp ứng ñược yêu cầu truyền thông tốc ñộ cao
và hỗ trợ truyền thông giữa nhiều lõi xử lý khác nhau.
Mục ñích của luận văn này là nghiên cứu, tìm hiểu một phương thức
truyền thông trên chip theo kiểu bus tiên tiến ñược sử dụng rộng rãi trong rất
nhiều SoC khác nhau, ñó là hệ thống bus AMBA AHB của hãng ARM; từ ñó sẽ
xây dựng một hệ thống bus theo kiến trúc bus AHB ñể phục vụ cho những mục
ñích truyền thông trong các SoC ñang ñược Nhóm nghiên cứu về thiết kế vi
mạch (VSD Group) phát triển tại Phòng thí nghiệm Hệ thống tích hợp thông
minh (SIS Laboratory). Luận văn ñược thực hiện trong khuôn khổ các ñề tài
nghiên cứu khoa học mã số QC.09.15 và PUF.08.06.
2


Chương 1 Hệ thống trên chip và vấn ñề truyền thông trên
chip
1.1. Hệ thống trên chip - lịch sử và xu thế phát triển

Kể từ khi những vi mạch tích hợp (IC) ñầu tiên ra ñời vào năm 1958 [21],
công nghệ vật liệu bán dẫn ñã có nhiều bước phát triển lớn. Với công nghệ sản
xuất các transistor ở kích thước nano thì các vi mạch tích hợp ngày nay có thể
ñược tích hợp khoảng hơn một tỷ transistor trên một vi mạch (ví dụ: chip Xeon
7400 của Intel ñã ñạt ñộ tích hợp là 1,9 tỷ transistor [4]). ðiều này không chỉ tạo
ra các loại IC có ñộ phức hợp và hiệu năng cao, hoạt ñộng với công suất tiêu thụ
thấp mà còn cho phép phát triển nhiều chức năng hoạt ñộng khác nhau trên cùng
một vi mạch. Các hệ thống ñiện tử với từng khối chức năng riêng biệt và ñược
thực hiện bởi các loại IC khác nhau, nay ñã có thể cùng ñược thực thi lên trên
một chip duy nhất. Từ ñó, khái niệm “Hệ thống trên chip” ra ñời ñể chỉ việc tích
hợp các thành phần của một hệ thống máy tính lên trên một chip ñơn. Với sự
phát triển của công nghệ, các khối chức năng (hay còn gọi là các lõi IP -
Intellectual Property) ñược tích hợp lên một chip ñơn không chỉ là các khối thực
hiện các chức năng số (digital) mà còn có thể thực hiện các chức năng tương tự
(analog) hoặc cả hai chức năng trên (mix-signal). Thậm chí các khối có chức
năng thu phát sóng vô tuyến cũng có thể ñược tích hợp chung với nhau trên một
hệ thống ñơn nhất. Một SoC thường bao gồm các khối số và khối tương tự như
sau [22]:
- Một hoặc nhiều lõi vi xử lý (CPU) hoặc các khối xử lý tín hiệu số (DSP);
- Khối nhớ (ROM, RAM, flash…);
- Các giao tiếp mở rộng (USB, SPI, USART, erthenet, bluetooth…);
- Các bộ mã hoá và giải mã (Viterbi, Turbo…);
- Các bộ chuyển ñổi ADC, DAC, khuếch ñại tín hiệu…;
- Hệ thống bus truyền nhận dữ liệu;
- Các khối ñiều chỉnh ñiện thế và quản lý năng lượng của nguồn;
Kiến trúc cơ bản của một hệ thống trên chip ñiển hình ñược mô tả như
trong Hình 1.
3

IP

IP
IP
IP
DMA
DMA
Arbiter
Arbiter
µC
µC
USB
USB
PCI
PCI
Bridge
Bridge
Arbiter
Arbiter
Peripheral bus
System-on-Chip
IP
IP
CPU
CPU
RAM
RAM
High speed bus

Hình 1. Kiến trúc cơ bản của một Hệ thống trên chip (SoC).
Hình 2 mô tả cấu trúc của một vi ñiều kiển ARM với kiến trúc ñược xây
dựng theo mô hình SoC. Trong mô hình này, lõi vi xử lý sẽ kết nối với các lõi IP

khác thông qua bus tốc ñộ cao ASB hoặc AHB. Một số lõi IP ñảm nhiệm chức
năng giao tiếp với các thiết bị ngoại vi sẽ ñược kết nối với bus APB và kết nối
với bus chính thông qua cầu bus. Việc phân tầng hệ thống bus theo kiểu này sẽ
giúp tiết kiệm băng thông cho hệ thống, làm tăng hiệu suất hoạt ñộng của hệ
thống lên ñáng kể.

Hình 2. Cấu trúc của một vi ñiều khiển ARM ñược xây dựng theo kiến trúc SoC
[22].
4

Từ khi SoC ñầu tiên ra ñời vào năm 1974 [29], các SoC ñã có nhiều thay
ñổi và phát triển nhanh chóng. Các SoC ngày nay có thể chứa ñến hàng tỷ
transistor và số lõi IP ñược tích hợp trên mỗi chip ngày càng tăng với chức năng
ngày càng phong phú. Với công nghệ hiện nay, một SoC ñược sử dụng trong các
thiết bị số cá nhân (PDA) hay trong các ñiện thoại di ñộng có thể thực hiện hầu
hết các chức năng về ñiều khiển, quản lý thiết bị, các chức năng giao tiếp không
dây, có dây, cũng như các chức năng ña phương tiện (multimedia) với chất lượng
cao.
Với nhu cầu của cuộc sống hiện ñại, các thiết bị di ñộng trở nên không thể
thiếu ñối với mỗi cá nhân trong công việc cũng như trong giao tiếp hay giải trí.
Vì vậy chiến lược hiện nay của nhiều công ty và viện nghiên cứu là nghiên cứu
và phát triển các SoC theo hướng ñáp ứng những yêu cầu thực thế này. Với nhu
cầu thông tin di ñộng và việc lưu trữ cũng như truyền dữ liệu với dung lượng lớn,
tốc ñộ cao thì các SoC ngày nay thường ñược phát triển theo hướng tích hợp
ngày càng nhiều các chuẩn giao tiếp không dây như WiMax, wi-fi 802.11b/g/n,
bluetooth, 3G… cũng như hỗ trợ các chuẩn giao tiếp có dây tốc ñộ cao (USB 2.0,
USB 3.0, eSATA…). Những SoC như thế ra ñời ñã làm cho các thiết bị di ñộng
ngày càng có kích thước nhỏ gọn, nhưng sức mạnh xử lý và giao tiếp ngày càng
ñược nâng cao hơn.
Sự phát triển của các thiết bị di ñộng cũng gắn liền với một nhu cầu quan

trọng của con người ñó là nhu cầu giải trí di ñộng. Những chức năng về các ứng
dụng ña phương tiện trở thành một tiêu chuẩn quan trọng trong các thiết bị số cá
nhân hiện nay. Chính vì vậy việc phát triển các SoC có tích hợp sẵn các bộ giải
mã tín hiệu âm thanh (chuẩn MP3, WAV…) hay tín hiệu hình ảnh (chuẩn AVI,
MP4, H.264, HDMI…) cũng ñang nhận ñược rất nhiều sự quan tâm và ñầu tư.
Ngoài ra các SoC này cũng ñược nghiên cứu và phát triển theo hướng tích hợp
ngày càng nhiều các lõi vi xử lý lên trên một chip (các SoC ña lõi xử lý) [10]
[19] ñể tăng tốc ñộ và hiệu năng xử lý của hệ thống. ðiều này không chỉ giúp cho
hệ thống có thể thực hiện các tác vụ ña phương tiện ñược nhanh chóng hơn mà
còn mang lại cho người sử dụng sức mạnh xử lý dữ liệu ngay cả khi ñang di
chuyển, một yếu tố quan trọng trong cuộc sống hiện ñại.
Hình 3 là mô hình cấu trúc của một trong các SoC ñược xem là mạnh nhất
hiện nay. ðây là chip OMAP 4 (của hãng Texas Instrucments) [24] ñược phát
triển dành cho các nền tảng di ñộng thế hệ mới. Nền tảng chip mới này có khả
năng tích hợp nhiều lõi vi xử lý, hỗ trợ hầu hết các kết nối phổ biến cũng như các
hệ thống trình diễn ña phương tiện tiên tiến nhất.

5


Hình 3. Kiến trúc của chip OMAP 4 [24].
Một hướng nghiên cứu cũng ñang thu hút ñược sự quan tâm của giới thiết
kế SoC hiện nay ñó là việc thiết kế, xây dựng các hệ thống truyền thông trên chip
có hiệu quả. Sự phát triển của các hệ thống trên chip ñã làm cho các hệ thống bus
truyền thống trở nên lạc hậu vì không thể ñáp ứng ñược các yêu cầu truyền thông
phức tạp với tốc ñộ cao và dung lượng lớn. Cùng với việc tích hợp ngày càng
nhiều nhiều lõi IP trên một chip thì một yêu cầu quan trọng là phải xây dựng
ñược các hệ thống truyền thông có tốc ñộ truyền dữ liệu cao và hỗ trợ quản lý
một số lượng lớn các lõi IP gắn vào hệ thống.
Ngày nay, các phương pháp truyền thông cũ như truyền thông chia sẻ bus

vẫn ñang ñược tiếp tục cải tiến và phát triển. Các hệ thống bus tiên tiến ra ñời
phần nào cũng ñã ñáp ứng ñược những nhu cầu truyền thông trên chip hiện nay.
Bên cạnh ñó, các phương pháp truyền thông mới như “Mạng trên chip” (NoC)
cũng ñang ñược nghiên cứu và ñang trong quá trình hoàn thiện. NoC hiện ñược
xem là một phương pháp truyền thông trên chip có tính ưu việt cao hơn các
phương pháp cũ và có thể sẽ ñược ứng dụng thay thế cho các phương thức truyền
bus trong các SoC thế hệ mới. Tuy nhiên các nghiên cứu về NoC cũng chỉ vừa
mới hoàn thành và việc ứng dụng phương thức truyền thông mới này vào thực tế
vẫn còn hạn chế do ñộ phức tạp cao, chi phí thực hiện lớn và ñộ ổn ñịnh vẫn chưa
ñược ñảm bảo… Chính vì vậy, việc xây dựng và phát triển các loại bus tiên tiến
vẫn mang tính thời sự và cấp thiết của nó [3] [8] [16]. Việc thiết kế, xây dựng
một hệ thống bus tiên tiến có tốc ñộ cao, băng thông lớn, ñộ ổn ñịnh cao vẫn luôn
ñóng một vai trò quan trọng trong quá trình thiết kế một SoC. Các kiến trúc bus
6

tiên tiến luôn là một sự lựa chọn tối ưu cho các thiết kế SoC cần những ứng dụng
có ñộ phức tạp vừa phải, số lượng lõi IP trên hệ thống không quá lớn.
Chính vì những lý do ñã ñề cập ở trên, luận văn này tập trung vào tìm hiểu
về các ñặc tả kỹ thuật của hệ thống bus AMBA AHB - một hệ thống bus tiên tiến
hiện nay - ñể từ ñó có thể thiết kế, xây dựng nên một hệ thống bus AHB nhằm
ñảm bảo ñược vấn ñề truyền thông trong các thiết kế SoC ñang ñược tiến hành
nghiên cứu tại Phòng thí nghiệm Hệ thống tích hợp thông minh (SIS Lab) thuộc
trường ðại học Công nghệ.
Các vấn ñề về truyền thông trên chip, cũng như các mô tả kỹ thuật chi tiết
của hệ thống bus AMBA AHB sẽ tiếp tục ñược ñề cập sâu hơn trong những phần
sau ñể làm cơ sở cho việc thực hiện luận văn này.
1.2. Tổng quan về phương pháp thiết kế hệ thống trên chip
Hệ thống trên chip là một chip ñiện tử, vì vậy việc thiết kế một SoC phải
tuân theo ñúng quy trình thiết kế một chip. Một quy trình thiết kế chip thông
thường bao gồm hai công ñoạn lớn ñó là: thiết kế logic (front-end) và thiết kế vật

lý (back-end). Mỗi công ñoạn lại ñược chia thành các bước khác nhau như ở
Hình 4 [18].

Hình 4. Quy trình thiết kế chip cơ bản.
7

Xuất phát từ yêu cầu thiết kế và các ñặc tả kỹ thuật, người thiết kế sẽ xây
dựng kiến trúc của chip cần thiết kế. Kiến trúc này sẽ ñược mô tả bằng các ngôn
ngữ thiết kế phần cứng ở các mức cụ thể khác nhau: từ mức cao nhất là mức
hành vi hệ thống cho ñến mức thấp nhất là kết nối giữa các khối logic. Sau khi
ñược tổng hợp logic, hệ thống sẽ ñược mô phỏng ñể kiểm tra các chức năng logic
của hệ thống trước khi chuyển sang các thiết kế vật lý ñể có thể ñưa ra một chip
hoàn chỉnh.
Công ñoạn thiết kế logic bao gồm bốn bước cơ bản:
1. Mô tả thiết kế (Design Entry): dựa trên các yêu cầu hoạt ñộng của hệ
thống ñể ñưa ra các mô tả về chức năng và kỹ thuật của hệ thống cần xây
dựng, sau ñó sử dụng các ngôn ngữ mô tả phần cứng như VHDL [2] [6]
[15] hay Verilog [13] [17] và các bản vẽ ñể mô tả thiết kế.
2. Tổng hợp logic (Logic Synthesis): ở bước này, người thiết kế sẽ sử dụng
các công cụ tổng hợp logic như, ISE (Xillinx), Leonardo Spectrum
(Mentor Graphics)… kết hợp với các thư viện thiết kế ñể tạo ra một sơ ñồ
hoặc một bản mô tả bao gồm các khối logic và các kết nối giữa chúng.
ðây có thể xem là bước gắn kết thiết kế với các thư viện tế bào phần cứng
ñược cung cấp bởi các nhà sản xuất.
3. Phân chia hệ thống (System Partitioning): phân chia hệ thống thành các
khối thành phần theo chức năng hoạt ñộng hoặc ñặc trưng vật lý của từng
khối ñể ñưa lên các phần khác nhau của ASIC.
4. Mô phỏng tiền layout (Pre-layout Simulation): mô phỏng các chức năng
của hệ thống dựa trên sơ ñồ logic ñược tổng hợp ở bước 2. Nếu các chức
năng ñược mô phỏng chưa hoạt ñộng ñúng thì cần phải quay lại bước tổng

hợp logic. Quá trình này còn ñược gọi là quá trình mô phỏng sau tổng hợp
logic (post-synthesis simulation).
Thực ra, trong suốt quá trình thiết kế, việc mô phỏng và kiểm chứng sẽ
ñược tiến hành ở hầu hết các quá trình nhằm ñảm bảo thiết kế hoạt ñộng ñúng
trước khi chuyển sang công ñoạn thiết kế vật lý.
Công ñoạn thiết kế vật lý ñược thực hiện trong các bước từ (5) ñến (9) bao
gồm:
5. Vẽ sơ ñồ nền (Floor Planning): sắp xếp các khối con của hệ thống lên trên
chip.
6. ðặt chỗ (Placement): bố trí các tế bào linh kiện cơ bản (standard cells) bên
trong một khối thành phần.
8

7. ðịnh tuyến (Routing): thiết lập các kết nối giữa các tế bào cơ bản, cũng
như giữa các khối thành phần.
8. Phân tích và ước lượng các thông số mạch ñiện (circuit extraction): tính
toán, kiểm tra và ñánh giá các tham số về trở kháng, dung kháng, ñiện
cảm giữa các kết nối cũng như giữa các khối cơ bản.
9. Mô phỏng sau khi thực hiện layout (Post-layout Simulation): mô phỏng
toàn bộ hệ thống trước khi triển khai lên ASIC.
Quá trình thiết kế vật lý có thể ñơn giản hơn tuỳ thuộc vào các loại ASIC
khác nhau. Cũng như ở công ñoạn thiết kế logic, việc mô phỏng và kiểm chứng
cũng ñược tiến hành sau mỗi quá trình thiết kế nhằm ñảm bảo hệ thống ñược hoạt
ñộng ñúng ở từng quá trình.
Về mặt phương pháp thiết kế, hiện nay việc thiết kế hệ thống trên chip vẫn
ñược thực hiện theo hai phương pháp chủ yếu, ñó là phương pháp thiết kế từ
trên-xuống (top-down) và phương pháp thiết kế từ dưới-lên (bottom-up). Mỗi
phương pháp ñều có các ưu ñiểm và nhược ñiểm riêng của nó. Việc lựa chọn
phương pháp thiết kế là tuỳ thuộc vào người thiết kế và ñặc tính kỹ thuật cụ thể
của hệ thống cần thiết kế.

Với phương pháp thiết kế từ trên-xuống, người thiết kế sẽ dựa vào ñặc tả
kỹ thuật của SoC cần thiết kế ñể chia hệ thống thành nhiều khối nhỏ, mỗi khối sẽ
ñảm nhiệm một chức năng riêng biệt. Tại mỗi khối nhỏ này, người thiết kế lại
tiếp tục chia nhỏ khối này ra thành các khối ñơn vị nhỏ hơn với các chức năng cụ
thể hơn. Quá trình ñược tiếp tục cho ñến khi ñạt ñược các khối chức năng cơ bản
nhất như ñược mô tả trong Hình 5a. Kết quả cuối cùng là ta thu ñược kiến trúc
cần xây dựng dưới dạng các khối chức năng riêng biệt. Ưu ñiểm của phương
pháp thiết kế này là cho phép người thiết kế có thể thiết kế hệ thống ở nhiều mức
trừu tượng khác nhau, từ mức hành vi hệ thống cho ñến mức RTL [14], thậm chí
có thể xuống ñến mức các cổng logic cơ bản. Việc chia nhỏ hệ thống cũng giúp
cho việc quản lý sự sai khác và các xung ñột có thể xảy ra khi thay ñổi kích
thước thiết kế của hệ thống, các hiệu ứng ñiện ở mức micro-mét, cũng như có thể
xác ñịnh ñược sơ bộ thời gian cần thiết ñể thực thi hệ thống. Một thuận lợi nữa
của phương pháp này là cho phép các nhóm thiết kế có thể làm việc song song và
ñộc lập với nhau trên từng phần của hệ thống. ðiều này không chỉ làm giảm
ñược các lỗi xảy ra khi thực hiện một hệ thống phức tạp, mà còn giảm ñược thời
gian từ lúc thiết kế hệ thống ñến khi ñưa sản phẩm ra thị trường. ðây cũng là
phương pháp ñược sử dụng chủ yếu trong thiết kế các SoC hiện nay.
9


Hình 5. Mô hình các phương pháp thiết kế SoC.
Phương pháp thiết kế từ dưới-lên ñược tiến hành theo phương thức hoàn
toàn ngược lại với phương pháp trên. Với phương pháp này, xuất phát từ các
khối chức năng có sẵn ñã ñược thiết kế trước, kết hợp với các yêu cầu thiết kế
như: hiệu năng hệ thống, các tham số về ñiện, công suất tiêu thụ, kích thước của
hệ thống, kỹ thuật dùng ñể sản xuất chip… người thiết kế sẽ xây dựng nên các
khối chức năng cơ bản nhất của hệ thống. Các khối chức năng này lại ñược kết
hợp với nhau thành các khối lớn hơn, và cuối cùng là kết hợp thành hệ thống
hoàn chỉnh. Ưu ñiểm chính của phương pháp này là cho phép người thiết kế tận

dụng ñược tối ña các khối chức năng hoặc các lõi IP từ những thiết kế trước ñó.
Lõi IP ñược tái sử dụng không chỉ là từ những thiết kế trước mà có thể là những
lõi IP ñược phát triển bởi các nhóm thiết kế khác, hoặc từ các công ty khác. ðiều
này ñảm bảo ñược cho tính ổn ñịnh của lõi IP trong quá trình hoạt ñộng cũng như
việc phát triển thêm tính năng ñể phù hợp với thiết kế hiện tại. Chính vì vậy mà
việc tái sử dụng các lõi IP không chỉ tiết kiệm ñược chi phí tài chính mà còn
giảm ñược thời gian từ lúc phát triển hệ thống ñến khi ñưa sản phẩm ra thị
trường.
Hiện nay, khi thiết kế các SoC phức tạp thì cả hai phương pháp trên ñều
cùng ñược áp dụng ñể tận dụng ñược thế mạnh của từng phương pháp, giúp cho
việc nâng cao hiệu quả trong quá trình thiết kế.
Luận văn này áp dụng phương pháp thiết kế từ trên-xuống ñể phân tích và
xây dựng hệ thống dựa trên các ñặc tả kỹ thuật ñược cung cấp. Vấn ñề thiết kế và
xây dựng hệ thống bus AHB sẽ ñược trình bày cụ thể thêm ở trong Chương 3 của
luận văn này.

10

1.3. Vấn ñề truyền thông trên chip
Trong các SoC hiện tại, quá trình truyền thông giữa các lõi IP chủ yếu dựa
vào các kết nối ñiểm-tới-ñiểm hoặc các kiến trúc bus dùng chung [20]. Khi hệ
thống trở nên phức tạp với số lượng lõi IP ñược tích hợp ngày càng nhiều thì các
kiểu truyền thông này bộc lộ nhiều hạn chế như: thông lượng truyền thông
(throughput) bị giới hạn, công suất tiêu thụ năng lượng lớn, tính toàn vẹn của tín
hiệu không ñược bảo ñảm, trễ ñáp ứng trong quá trình truyền tín hiệu, vấn ñề
ñồng bộ trên toàn hệ thống… Nếu các phương pháp truyền thông trên chip không
ñược cải tiến thì những hạn chế nói trên sẽ tạo nên các nút thắt cổ chai, dẫn ñến
các hạn chế trong việc thiết kế và xây dựng các hệ thống tích hợp.
Với kiểu kết nối ñiểm-tới-ñiểm, truyền thông giữa các lõi IP ñược thực
hiện thông qua các liên kết vật lý trực tiếp từ IP nguồn tới IP ñích. Ưu ñiểm của

kiểu kết nối này là chúng ta có ñược hiệu suất truyền thông tối ña giữa các ñơn vị
tham gia truyền thông (sử dụng tối ña tài nguyên băng thông). Tuy nhiên,
phương pháp truyền thông này ñòi hỏi một lượng lớn liên kết trực tiếp giữa các
lõi IP trong khi hiệu quả sử dụng các liên kết này không lớn (tần suất sử dụng
thấp). ðồng thời, số lượng liên kết lớn sẽ làm tăng không gian thực thi phần cứng
và tăng ñộ phức tạp trong quá trình ñặt chỗ và ñịnh tuyến (place and route).
Chính vì vậy, kiến trúc truyền thông kiểu này sẽ trở nên phức tạp ñối với việc
thiết kế các SoC trong tương lai do số lượng các lõi IP ngày càng nhiều hơn.

Hình 6. Mô hình kết nối ñiểm-tới-ñiểm.
ðể khắc phục các nhược ñiểm của kiến trúc truyền thông ñiểm-tới-ñiểm,
kiến trúc truyền thông bus ñã ñược ñề xuất ñể thay thế cho kiểu kiến trúc truyền
thông cũ. Ngày nay, với các hệ thống trên chip phức tạp kiến trúc truyền thông
bus là kiểu truyền thông ñược sử dụng phổ biến nhất trong các ứng dụng thương
mại. Kiến trúc bus này cung cấp giải pháp kết nối ñơn giản, hiệu quả mà qua ñó
các lõi IP có thể kết nối với nhau thông qua một giao thức truyền thông ñược
ñịnh trước. Nếu so sánh với kiểu kết nối ñiểm-tới-ñiểm thì kiến trúc bus tỏ ra ưu
việt hơn ở tính mềm dẻo, khả năng tái sử dụng cao và ñộ phức tạp của hệ thống
11

ñược giảm ñi ñáng kể. Tuy nhiên, kiến trúc bus chỉ cho phép thực hiện một quá
trình truyền thông giữa các lõi IP tại một thời ñiểm nhất ñịnh. Vì vậy băng thông
của bus sẽ ñược chia cho các lõi IP và hiệu suất truyền thông sẽ giảm ñi ñáng kể
khi số lượng lõi IP tăng lên. Ngoài ra, chúng ta cần phải xây dựng cơ chế phân
quyền truy cập cho các lõi IP khi xuất hiện ñồng thời nhiều yêu cầu truyền thông
tại cùng một thời ñiểm. Hơn nữa, vì bus dùng chung cho cả hệ thống nên các liên
kết hình thành bus có ñộ dài tương ñối ñáng kể. ðiều này làm tăng công suất tiêu
thụ trên toàn hệ thống vì dữ liệu ñược truyền trên toàn bus cho dù truyền thông
chỉ ñược thực hiện giữa vài lõi IP. Bên cạnh ñó, khi chúng ta tăng số lượng lõi IP
thì kích thước của bus cũng tăng lên và kết quả là trễ truyền dẫn dữ liệu sẽ vượt

quá chu kỳ xung nhịp hệ thống (clock). Qua những vấn ñề trên cho thấy mô hình
kết nối kiểu chia sẻ bus bộc lộ nhiều hạn chế nhất ñịnh khi triển khai các hệ
thống tích hợp với một số lượng lớn các lõi IP. ðến nay, các nhà nghiên cứu
cũng ñã ñưa ra thêm nhiều cấu trúc bus ñể giải quyết một số vấn ñề gặp phải như
trên như: cấu trúc bus phân tầng, cấu trúc bus phân chia, cấu trúc bus dạng
vòng… Mô hình kiến trúc bus chia sẻ, phân tầng ñược mô tả như trong sơ ñồ ở
Hình 7. Tuy nhiên các cấu trúc bus này vẫn không thể loại bỏ hoàn toàn các vấn
ñề cố hữu thuộc về bản chất của kiến trúc truyền thông dạng bus.

Hình 7. Kiến trúc bus chia sẻ, phân tầng.
ðể giải quyết triệt ñể các vấn ñề của kiến trúc bus truyền thống, một mô
hình truyền thông mới dựa ñã ñược ñề xuất ñó là mô hình mạng trên chip (NoC)
(Hình 8). ðây ñược xem là một giải pháp ñột phá cho vấn ñề truyền thông trên
chip và mạng trên chip có thể thay thế hoàn toàn các cấu trúc bus trong các thế
hệ SoC tiếp theo.
12


Hình 8. Mô hình cơ bản của một hệ NoC.
Mô hình NoC ñược xem như là một giải pháp truyền thông trên chip thay
thế các mô hình truyền thông cổ ñiển trước ñây vì nó có nhiều ưu ñiểm vượt trội:
tính linh hoạt trong thiết kế, khả năng mở rộng thiết kế, lưu lượng truyền thông
cho phép cao, tối ưu năng lượng tiêu thụ, tính mô ñun hóa. Tính mềm dẻo của
mô hình NoC thể hiện ở khả năng truyền thông ñộng nhờ kỹ thuật chuyển mạch
gói. Với các hệ thống có ñộ tích hợp cao, mô hình NoC cho phép mở rộng kiến
trúc mạng truyền thông bằng cách thêm các nút mạng mà không làm giảm hiệu
suất truyền thông của các kênh truyền thông khác trong mạng. Kết nối giữa các
ñơn vị truyền thông ngắn (tối ña bằng khoảng cách giữa các nút mạng với nhau)
giúp cho truyền thông có thể ñạt ñược lưu lượng tối ña trên từng kênh cục bộ.
Lưu lượng truyền thông cả mạng ñược tính bằng tổng lưu lượng truyền thông của

các kênh ñược thiết lập. Ngoài ra, năng lượng tiêu thụ có thể giảm khi kênh
truyền thông không ñược kích hoạt. Với nhiều ưu ñiểm, mô hình NoC ñược xem
như là một sự lựa chọn hứa hẹn cho các hệ thống SoC phức tạp trong tương lai,
khi các thiết kế có thể lên tới hàng tỷ transistors.
13


Chương 2 Hệ thống bus AMBA AHB
2.1. Tổng quan về hệ thống bus tốc ñộ cao AMBA AHB
Kiến trúc bus tiên tiến dùng cho vi ñiều khiển (AMBA-Advanced
Microcontroller Bus Architecture [1]) là một kiến trúc bus dành cho các hệ thống
trên chip ñược công ty ARM ñưa ra lần ñầu tiên vào năm 1996. Qua thời gian
phát triển, ñến nay kiến trúc bus AMBA ñã có ñến ba phiên bản, phù hợp với
nhiều mục ñích truyền thông khác nhau. Mỗi phiên bản là sự nâng cấp tương ứng
với sự phát triển của hệ thống trên chip, cũng như yêu cầu về tốc ñộ và băng
thông ngày càng cao của các hệ thống này. Ba phiên bản của hệ thống bus
AMBA lần lượt là:
- Bus hệ thống tiên tiến - ASB (Advanced System Bus) và bus ngoại vi tiến
tiến - APB (Advanced Peripheral Bus).
- Hệ thống bus tiên tiến hiệu năng cao - AHB (Advanced High-performance
Bus).
- Giao tiếp mở rộng tiên tiến - AXI (Advanced eXtensible Interface).
AHB là bus hệ thống thế hệ thứ hai của AMBA với mục ñích hướng tới
các thiết kế cần hiệu năng cao. ðây là một hệ thống bus hỗ trợ ña bus chủ và có
khả năng cung cấp băng thông rộng với tốc ñộ truyền dữ liệu cao. Mục ñích của
bus AHB là ñể ñảm bảo quá trình truyền dữ liệu giữa các lõi IP cần ñộ rộng bus
dữ liệu lớn và tốc ñộ truyền cao.
Một số ñặc tính của bus AMBA AHB:
• Truyền thông theo khối (burst transfers).
• Phân chia quá trình truyền (split transactions).

• Chuyển giao bus chủ trong một xung ñơn.
• Thực thi tại sườn của ñơn xung.
• Không dùng chuyển mức ba trạng thái.
• ðộ rộng bus dữ liệu có thể thay ñổi linh hoạt (từ 8 bit lên ñến 1024 bit).
14

Hình 9 mô tả cấu trúc cơ bản của một vi ñiều khiển có sử dụng hệ thống
bus AMBA AHB.

Hình 9. Mô hình vi xử lý có sử dụng bus AHB [1].
Hiện nay, các nghiên cứu về kiến trúc bus AMBA nói chung và cấu trúc
bus AHB nói riêng là ñã tương ñối hoàn chỉnh. Các nghiên cứu hiện tại chủ yếu
tập trung vào việc thiết kế các thuật toán phân xử bus ñể tối ưu ñược quá trình
phân quyền truy cập giữa các bus chủ, từ ñó giúp tối ưu ñược thông lượng truyền
thông trên bus và công suất tiêu thụ của bus. Công suất tiêu thụ trên bus có thể
giảm ñến 22% nếu bus AHB sử dụng một thuật toán phân xử bus hợp lý [9]. Các
nghiên cứu ñánh giá về hiệu suất truyền thông và công suất tiêu thụ của bus
AMBA AHB cũng ñược thực hiện, chủ yếu là ñể có thể so sánh với phương thức
truyền thông NoC vừa mới ra ñời. Tuy những nghiên cứu này chỉ ra rằng hiệu
suất của NoC vượt trội hơn bus AHB, nhưng khả năng hoạt ñộng của bus AHB là
hoàn toàn ñáp ứng ñược yêu cầu truyền thông của hầu hết các SoC hiện nay [5]
[7] [16]. Một hướng nghiên cứu về kiến trúc bus AMBA cũng ñang ñược chú ý,
ñó là việc thiết kế các hệ thống bus AMBA có khả năng tái cấu hình. Mục ñích
của các nghiên cứu này là xây dựng nên các hệ thống bus AMBA thông minh, có
khả năng tự cấu hình lại ñể thích nghi với tình trạng truyền thông hiện tại của hệ
thống. Việc tái cấu hình thường tập trung chủ yếu vào việc thay ñổi thuật toán
phân xử bus hoặc thay ñổi cấu trúc bus ñể thích ứng với thông lượng truyền
thông của bus [11].
Không chỉ dừng lại ở các nghiên cứu phát triển trong phòng thí nghiệm,
kiến trúc bus AMBA còn là một trong những kiến trúc bus ñược ứng dụng rộng

rãi trong nhiều SoC thương mại. Nhờ vào cấu trúc mở và tính linh hoạt mà kiến
trúc bus này có thể ñược thay ñổi ñể phù hợp với nhiều kiểu truyền thông khác
nhau trên SoC. Do ñó, kiến trúc bus AMBA ñược các nhà phát triển hệ thống
trên chip sử dụng khá phổ biến. Các sản phẩm có sử dụng kiến trúc bus AMBA,
ñặc biệt là cấu trúc bus AHB, xuất hiện với ña dạng các thể loại: từ việc ñược
15

tích hợp sẵn trong các lõi IP cho ñến những hệ thống bus của các SoC hoàn
chỉnh, và tồn tại cả dưới dạng các lõi IP có chức năng truyền thông. Các sản
phẩm này có thể là các sản phẩm phần cứng, hoặc cũng có thể là các lõi IP mềm
ñể cho phép tích hợp vào các hệ thống khác nhau. Một số sản phẩm có thể kể ñến
như là: lõi IP 10-100 Ethernet – AHB và lõi IP Gigabit – AHB (Arasan) [25]; các
lõi IP chứa các thành phần của bus AHB (Aurora VLSI) [27], lõi PiP-AMBA
(CAST) [28]; các dòng vi xử lý ARM9E, ARM10E (sử dụng bus AHB) và
ARM11, Cortex ( sử dụng bus AXI) của công ty ARM [26].

Hình 10. Lõi PiP AMBA của công ty CAST [28].
2.2. Mô hình và hoạt ñộng chung của bus AMBA AHB
2.2.1. Mô hình mt h thng AMBA AHB
Một hệ thống AMBA AHB bao gồm những thành phần chính như: bus
chủ, bus tớ, bộ phân xử, bộ giải mã ñịa chỉ, các bộ phân kênh và ñược kết nối
với nhau như Hình 11.
16


Hình 11. Sơ ñồ kết nối giữa các thành phần bên trong bus AHB [1].
- Bus chủ (master): cho phép khởi ñộng việc ñọc và ghi bằng cách cung cấp
ñịa chỉ và thông tin ñiều khiển. Tại một thời ñiểm thì chỉ có một bus chủ
ñược phép hoạt ñộng.
- Bus tớ (slave): một bus tớ sẽ ñáp ứng một hoạt ñộng ñọc hay ghi trong

một khoảng không gian ñịa chỉ ñược ñịnh trước. Các tín hiệu của bus tớ sẽ
trả về cho bus chủ biết quá trình truyền dữ liệu thành công, thất bại hay
ñang ñược tiến hành.
- Bộ phân xử bus (arbiter): ñược sử dụng ñể ñảm bảo tại một thời ñiểm chỉ
có duy nhất một bus chủ ñược phép thực hiện quá trình truyền dữ liệu,
ñồng thời nó cũng quản lý thứ tự ưu tiên truy cập bus của các bus chủ. Bộ
phân xử bus chỉ tồn tại trong hệ thống bus AHB có nhiều bus chủ.
- Bộ giải mã tín hiệu ñịa chỉ (address decoder): ñược dùng ñể giải mã ñịa
chỉ của mỗi lần truyền và cung cấp tín hiệu ñể lựa chọn bus tớ cần truyền
ñến.
- Các bộ phân kênh tín hiệu (multiplexor): là các bộ phân kênh tín hiệu ñịa
chỉ và tín hiệu dữ liệu trong bus, ñể chuyển các tín hiệu này ñến bus chủ
và bus tớ ñang tham gia vào quá trình truyền.
17

- Bus chủ mặc ñịnh (default master) và bus tớ mặc ñịnh (default slave): khi
hệ thống không có yêu cầu nào về truy cập bus, bộ phân xử bus sẽ cấp
quyền truy cập cho một bus chủ, ñó là bus chủ mặc ñịnh. Vai trò của bus
chủ mặc ñịnh có thể ñược thực thi bởi một bus chủ trong hệ thống và ñược
quy ñịnh bởi người thiết kế hệ thống. Bus tớ mặc ñịnh là bus tớ sẽ tham
gia vào quá trình truyền khi có một yêu cầu truyền ñến một ñịa chỉ không
nằm trong bản ñồ ñịa chỉ. Việc triển khai bus tớ mặc ñịnh là cần thiết khi
hệ thống không sử dụng hết bản ñồ ñịa chỉ. Bus tớ mặc ñịnh thường ñược
thực thi trong hệ thống như là một thành phần của bộ giải mã ñịa chỉ.
Theo như sơ ñồ ở Hình 11, tất cả các bus chủ sẽ phát quảng bá tín hiệu ñịa
chỉ và tín hiệu ñiều khiển ñể thông báo quá trình truyền cần thực hiện. Bộ phân
xử sẽ quyết ñịnh bus chủ nào ñược quyền truy cập bus và ñiều khiển các bộ phân
kênh ñể chuyển tín hiệu của bus chủ ñó ñến tất cả các bus tớ. Bộ giải mã ñịa chỉ
sẽ dựa vào tín hiệu ñịa chỉ ñể chọn ra bus tớ tham gia vào quá trình truyền.
2.2.2. Hot ñng ca h thng AMBA AHB

ðể bắt ñầu một quá trình truyền, bus chủ phải gửi tín hiệu yêu cầu quyền
truy cập bus ñến bộ phân xử. Bộ phân xử sẽ quan sát trạng thái truy cập hiện tại
của các bus chủ và gửi tín hiệu báo hiệu khi nào bus chủ ñó ñược sử dụng bus.
Một bus chủ sau khi ñược phép truy cập bus sẽ bắt ñầu một quá trình
truyền bằng cách phát ñi các tín hiệu ñịa chỉ và tín hiệu ñiều khiển. Những tín
hiệu này sẽ cung cấp thông tin về ñịa chỉ, hướng truyền và ñộ rộng của quá trình
truyền, cũng như báo hiệu nếu ñây là một quá trình truyền khối. Hệ thống bus hỗ
trợ hai dạng truyền khối là: quá trình truyền khối với ñịa chỉ tăng và quá trình
truyền khối với ñịa chỉ bị cuộn lại khi ñến ñịa chỉ biên.
Trong các quá trình truyền, một bus ghi dữ liệu sẽ ñược sử dụng ñể
chuyển dữ liệu từ bus chủ ñến bus tớ và một bus ñọc dữ liệu sẽ ñược dùng ñể
chuyển dữ liệu từ bus tớ ñến bus chủ. Mọi quá trình truyền ñều bao gồm: một
chu kỳ cho việc truyền tín hiệu ñịa chỉ, ñiều khiển và một hoặc nhiều chu kỳ cho
việc truyền dữ liệu.
Chu kỳ dành cho việc truyền ñịa chỉ không cần mở rộng do tất cả các bus
tớ phải lấy mẫu ñịa chỉ trong suốt thời gian truyền. Tuy nhiên chu kỳ truyền dữ
liệu lại có thể ñược mở rộng nhờ vào tín hiệu HREADY. Khi ở mức thấp, tín
hiệu này sẽ tạo ra một trạng thái chờ trong quá trình truyền và cho phép bus tớ có
thêm thời gian ñể cung cấp hoặc lấy mẫu dữ liệu.
18

Trong một quá trình truyền, bus tớ sẽ thông báo các trạng thái hiện tại của
quá trình truyền bằng cách dùng tín hiệu phản hồi HRESP[1:0]. Tín hiệu này
gồm bốn trạng thái:
- OKAY: ñược dùng ñể báo hiệu quá trình truyền ñang diễn ra bình thường
và khi HREADY chuyển mức HIGH thì báo hiệu là quá trình truyền ñã
hoàn tất.
- ERROR: báo hiệu có một lỗi trong quá trình truyền ñã phát sinh và do ñó
quá trình truyền không thành công.
- RETRY và SPLIT: cả hai trạng thái này ñều báo hiệu quá trình truyền

không thể hoàn thành ngay lập tức, nhưng bus chủ có thể tiếp tục thử
truyền lại.
2.3. Các chế ñộ truyền của bus AMBA AHB
Một quá trình truyền trên bus AHB bao giờ cũng gồm hai pha riêng biệt:
- Pha ñịa chỉ, chỉ trong một chu kỳ xung ñơn duy nhất.
- Pha dữ liệu, có thể ñược thực hiện trong nhiều chu kỳ xung. Khi pha này
hoàn thành thì sẽ ñược thông báo thông tín hiệu HREADY.
2.3.1. Quá trình truyn c bn, không có trng thái ñi
Một quá trình truyền cơ bản, không có trạng thái ñợi (Hình 12) bao gồm 3
bước cơ bản:
- Bus chủ phát ñi tín hiệu ñịa chỉ và tín hiệu ñiều khiển lên bus tại sườn lên
của xung HCLK.
- Bus tớ sẽ lấy mẫu ñịa chỉ và thông tin ñiều khiển ở sườn lên của xung nhịp
tiếp theo.
- Sau khi bus tớ lấy mẫu tín hiệu ñịa chỉ và ñiều khiển, nó có thể bắt ñầu xử
lý và phát tín hiệu dữ liệu cũng như tín hiệu phản hồi thích hợp về cho bus
chủ. ðồng thời bus tớ sẽ phát tín hiệu HREADY ở mức cao ñể báo hiệu
quá trình truyền thành công.

19


Hình 12. Quá trình truyền cơ bản trên bus AHB [1].
2.3.2. Quá trình truyn c bn, có trng thái ñi
Một bus tớ có thể chèn thêm các trạng thái ñợi vào trong pha dữ liệu của
bất kỳ quá trình truyền nào ñể cho phép quá trình truyền có thêm thời gian hoàn
thành (xem Hình 13). ðiều này ñược thực hiện như sau: ở ñầu pha dữ liệu, bus tớ
sẽ ñưa tín hiệu HREADY về mức thấp ñể báo hiệu quá trình truyền chuyển qua
trạng thái ñợi. Khi dữ liệu cho quá trình truyền ñã sẵn sàng, bus tớ sẽ chuyển tín
hiệu HREADY quay lại mức cao tại sườn lên của xung HCLK, báo hiệu quá

trình truyền thành công.

Hình 13. Quá trình truyền cơ bản có trạng thái ñợi [1].
Lưu ý rằng, với quá trình ghi dữ liệu, bus chủ sẽ giữ dữ liệu ổn ñịnh trong
suốt các chu kỳ mở rộng. Còn với quá trình ñọc dữ liệu thì bus tớ chỉ phải cung
cấp dữ liệu vào cuối chu kỳ cuối cùng.

×