Trường Dại học C ông nghệ... Đổ cho ph ép th ự c hiện việc truyền thông giữ a các lõi IP ỏ các b us khác nhau, các b us này dược nối với nhau bởi cầu b us bus bridge.hộ thống... Với các
Trang 1D Ạ I H Ọ C Q U Ố C G I A H À N Ộ I
T R Ư Ờ N G Đ Ạ I H Ọ C C Ô N G N G H Ệ
B Á O CÁO NG HI ỆM THU Đ Ề TÀI
cấp Dại học Q uốc gia Hà Nội
do trường D ại học Công nghệ quàn lý (đề tà i được thực hiện bởi nhóm nghiên cứu T h iế t kế vi mạch tích hợp, Phòng th í nghiệm mục tiê u Hệ th ố n g tích hợp th ôn g m inh)
T h iết kế và mô hình hoá
bus truyền thông tốc độ cao
Trang 2Mục lục
D a n h s á c h n h ữ n g n g ư ờ i t h a m g ia t h ự c h i ệ n đ ề t à i V
1 H ệ t h ố n g t r ê n c h i p v à c á c k iế n t r ú c t r u y ề n t h ô n g t r ẽ n c h ip 3
1.1 Hệ th ố n g trê n m ộ t c h i p 3
1.2 C ác kiến trú c tru y ề n th ò n g tru y ề n t h ố n g 6
2 K i ế n t r ú c t r u y ề n t h ô n g A M B A A H B 9 2.1 T ổng q u a n về hệ th ố n g bu s tố c độ cao A M BA A H B 9
2.2 M ô hình m ột hệ th ố n g A M B A A IIB .11
'2.3 H o ạt đ ộ n g c ủ a h ệ th ố n g A M BA A H B 13
2.4 C ác chế độ tru y ề n th ô n g c ủ a b us AM BA A H B 14
2.4.1 T h ô n g b á o về q u á trìn h tru y ề n c ủ a đơ n vị chủ b u s 17
2.4.2 P h à n c h ia m ột q u á (rìn h t r u y ề n 17
2.5 H oạt đ ộ n g p h â n x ử b u s 19
2.6 P h ả n hồi tru y ề n củ a đơn vị t ớ 20
1
Trang 33 T h i ế t k ế v à m ô h ì n h h o á h ệ t h ố n g b u s A M B A A H B 25
3.1 Bài to án th iế t k ế 25
3.1.1 M ô hình ph ân quyền c ủ a bộ ph ân xử b u s 29
3.1.2 M ô hìn h giao tiế p giừa đơn vị chủ b us và lõi I P 30
3.1.3 M ô hình giao tiếp giữa đơn vị tớ và lõi IP 31
3.2 Đơn vị chủ b u s 32
3.2.1 C ác tín hiệu trê n đơn vị chủ b u s 32
3.2.2 M áy trạ n g thối U1Ô t ả h oạt động củ a đơn vị chủ b u s 35
3.3 Dơn vị tứ 39
“Ỉ.3 1 C ác tín hiệu trôn đơn vị t ớ 39
3.3.2 M áy trạ n g th á i m ó tả hoạt động c ủ a đơn vị t ớ 42
3.4 B ộ ph ân x ử 46
3.1.1 C ác tín hiệu c ủ a bộ ph ân x ử 46
3.4.2 M áy trạ n g th á i m ô tả hoạt động của b ộ p h â n xứ 47
3.5 B ộ giải m ã đ ịa chỉ và các b ộ ph án k ê n h 49
3.5.1 Bộ giải m à đ ịa chí .49
3.5.2 Bộ ph ân kênh từ dơn vị chủ bus đ ế n đơn vị t ớ 50
3.5.3 Bộ ph ân kênh từ đơn vị tớ đến b us c h ủ 50
4 M ô h ì n h h o á , k iể m c h ứ n g v à t h ự c t h i t h i ế t k ế 53 4.1 Phương p h á p m ỏ hình hoá, m ó phỏng và kiểm c h ứ n g 53
4.2 M ô phỏng và kiểm chứng inn h ì n h 56
1.2.1 Kiểm tr a h o ạ t động tru y ền th ô n g đơn giản c ủ a m ô hìn h 56
1.2.2 Kiểm tr a h o ạ t động tru y ề n khối khi có các ph ản hồi tH iY ầi 58
4.3 Đ ánh g iá hộ th ố n g sa u khi th ự c th i ph ần c ứ n g 63
Trang 4Danh mục các từ viết tắ t
T ừ v iế t t ắ t M ô tả
AMBA Advanced Microcontroller Bus Architecture
ASIC Application-Specific Integrated Circuit
P&R Placc & Route
Trang 6Những người tham gia thực hiện
Dề tà i được th ự c hiện bời nhóm nghiên crtu T h iế t kế vi m ạch tích hợ p VSD {VLSL
S ystem s Design) tạ i P h ò n g th í nghiệm m ục tiêu Hộ th ố n g tích hợp th ô n g m inh Trường Dại học C ông nghệ D an h sách này liệt kc những th à n h viên chính tro n g nhóm thự c hiện d ề tài
Trang 7Danh sách hình vẽ
1.1 Mõ hình h ệ thống trê n c h ip 4
1.2 Kiến trú c két nối tro n g các hộ thống trẽ n c h ip 6
1.3 Mô hình b us pliân tầ n g 7
2.1 Mô hình vi điểu khicn có sử dụng b us A H B và A P B [A M B A spccị 10
2.2 Kiến t r ú r b us AM BA A IỈB ỊAM BAspecỊ 12
2.3 Q u á trìn h tru y ề n th ô n g cơ b ản , không có trạ n g th á i đợi trố n b us AM BA A H B 14
2 I Q uá trìn h truyền th õ n g cơ bản, có trạ n g thối đợi trẽn b us A M BA A IIB 15 2.5 Anh hựông của trạ n g th á i đợi đến p h a đ ịa chỉ của q u á trin h tru y ề n tiếp th e o 15
2.6 Truyền khối tă n g với n h ịp 4 17
2.7 M inh hoạ p h ả n hồi truyền E R R O R 22
'2.8 M inh hoạ ph ản hồi truyền R E T R Y 22
'ỉ.l P latfo rm h ệ th ố n g trô n chip CoM oSy 26
3.2 Kiến trú c h ệ th ố n g bus A M ỉ xây d ự n g 27
3.3 G iao tiế p giữa dơn vị chủ bus v à lõi I P 30
.'M G iao tiế p giữ a đơn vị tớ và lõi IP 31
•5.5 C ác tín hiệu trôn đ(in vị chủ bu s (hav còn gợi là b us m a s te r w ra p per) [Trail lOcliũỊ 32
'ỉ.(> Sơ đ ồ m áy trạ n g th ái cù a đơn vị chủ b u s 36
3.7 G iản đồ xung niinli hoạ q u á trìn h truvền S P L IT trẽ n (lơn vị chu bus 38
3.8 G iản đ è xung m inh hoạ q u á trìn h truyền R E T R Y tròn đơ n vị chủ bus 39
3.9 C ác till hiệu tròn đơn vị lớ (liay còn gọi là b us slave w ra p p e r) Trail lođai 40 3.10 Sơ đò m áy tra il” í hái r ũ a đơn vị tớ 43
3.1 I Cỉiản đồ xung m inh họa q u á trìn h truyền RK TRY trê n dơn vị tớ 45
v i
Trang 83.12 G iản đ ồ xung m inh họa q u á trìn h truyồn S P L IT trên đơn vi tớ 45
3.13 C ác tú i hiệu v à o /r a c ủ a bộ ph ân xử b u s 46
3.14 Sơ đồ m áy trạ n g th á i c ủ a bộ ph ân x ử 48
3.15 Bộ giải m ã đ ịa c h ì 50
4.1 Môi trư ờ n g m õ phỏng và kiổm tr a th iế t k ế 54
1.2 Q uy trìn h m ô hình hoá kiém chứng và thự c th i p h ầ n cứ ng 55
4.3 D ạng sóng th u được khi th ự c hiện q u á trin h tru y ền khối tăn g n h ịp 4 57
4.4 D ạng sóng th u đượ c khi thự c hiện quá trìn h truyền khối tă n g nh ịp 8 58
1.5 D ạng sóng th u được khi th ự c hiện q u á trìn h tru y ề n có p h ả n hồi R E T R Y từ dơn vị tở 1 59
■1.0 D ạng sóng th u dược khi thự c hiệu q u á trìn h tru y ề n có p h ả n hồi S P L IT lừ đơn vị tớ 1 60
4.7 D ạng sóng khi th ự c hiện q u á trìn h tru y ề n có ph ản hồi E R R O R 62
1.8 T in h bình sử d ụ n g các kiểu tài nguyên p h ầ n cứng củ a từ n g khối chức n ă n g 66
Trang 9Giới thiệu chung
Nhờ sự p h á t triể n n h a n h chóng c ủ a công nghệ bán d ẫ n và các kỹ th u ậ t th iết kế các
m ạch tích hợp chúng ta đ ã có thổ tích hợp cả hộ th ố n g gồm nhiều khối chức năng lèn trê n m ột vi m ạch đơn khối H ệ th ố n g tích hợp trê n m ột vi m ạch đdn khối này được gọi là Hệ th ố n g trê n vi m ạch (tro n g tiếng anh gọi là “S vstem -on-C hip” v à viết
t ắ t là SoC ) Hệ th ố n g trê n vi m ạch có th ể bao gồm các khối chức n ă n g số (vi x ử lý, các bộ nhớ RO M và RA M , khối xử lý tín hiệu số D S P ) ; các khối chức năng tương
tự (các bộ khuếch đ ại tín hiệu, các khối th u p h á t R F , các linh kiện M E M S Các khối chức nàn g n à y th ư ờ n g được gọi là các lõi IP (Intellectu al P ro p e rty ) C h ú n g ta
có th ể dỗ dàn g nh ận th ấ y m ộ t tro n g những ƯU điểm nối b ậ t c ủ a hệ th ố n g trê n một
vi m ạch đó là kích th ư ớ c nhỏ gọn, g iá th à n h th ấ p , tiê u th ụ ít năn g lượng nếu so sánh cùng m ột th iế t kế với hệ th ố n g được xây dựng trê n b ả n g m ạch in t ừ nhiều vi
m ạch khác n h a u B ên c ạn h đó, h ệ th ố n g trẽ n m ộ t vi m ạch cũng có tín h ổn đ ịn h cao hơn
Với yêu cầu ngày càng đ a d ạ n g c ủ a các ứng dụng, hệ th ố n g trê n chip tích hợp ngày càng nhiều lõi IP, v à do đó làm tă n g n h u cầu tru y ề n th ô n g giữa các lõi IP này với n h a u tro n g khi b ã n g th ố n g c ủ a các b us tru y ề n th ô n g là không đổi Việc th iế t
kế kiến trú c b us tru y ề n th ô n g tố c độ cao n hằm tă n g hiệu s u ấ t tru y ề n th õ n g trở
th à n h m ộ t b ài to á n q u a n trọ n g tro n g th iế t kế các hộ th ố n g trê n chip tương đối lớn
và tương đối phức tạ p G iải q u yết được bài to á n tru y ề n th ô n g trê n chip sẽ cho phcp chúng t a tố i ưu hiệu s u ấ t c ủ a hệ th ố n g trê n chip
X u ấ t p h á t vấn đ ề trê n , với đ ề tà i T h i ế t k ế v à m ô h ì n h h o á b u s t r u y ề n
t h ô n g t ố c đ ộ c a o d ù n g c h o c á c h ệ t h ố n g t r ê n v i m ạ c h nhóm nghiên cứu
d ã th iế t kế v à th ự c hiện m ộ t kiến trú c b us tru y ề n th ô n g tố c độ cao th e o kiến trú c
AM BA A H B n h ằ m ph ụ c v ụ cho các b ài to á n th iế t kế các hệ th ố n g trê n vi m ạch tại phòng th í nghiệm Hệ th ố n g tích hợp thông m inh, Trường Dại học C ông nghệ Tiến tới, tro n g tương lai gần xây dự ng các hệ th ố n g trê n vi m ạch hoàn chỉnh hướng tới
m ột số ứng d ụ n g cụ th ể tro n g tự động hoá, đo lường điều khiển và giám s á t môi
1
Trang 102 G IỚ I T H I Ệ U C H U N G
trường, hay tro n g lĩnh vực viễn thông, quốc p h ò n g
B ản báo cáo n à y được b ố cục n h ư sau: C hương 1 trìn h bày tổ n g q u a n về hệ thống trê n chip và các kiến trú c tru y ề n th ô n g tru y ề n thống K iến trú c tru y ề n thông bus A M BA AHB và các đặc tín h cơ b ả n được giới th iệ u m ột cách có chọn lọc trong chương 2 Chương 3 trìn h bày về th iế t kế hệ th ố n g bu s A M BA A ỉ IB, từ bài toán
th iết kế đến các th iế t kế chi tiế t C hương 4 trìn h bày việc m ô hình hoá v à kiểm chứng th iế t kế, các k ết q u ả th ự c th i th iế t kế trê n công nghệ F P G A c ũ n g được trìn h bày tro n g chương này C uối cù n g là m ộ t số kết luận và địn h hướng p h á t triể n tiếp theo
Trang 11trê n m ột p h iến silicon (chip) có kích th ư ớ c không q u á 1 inch'2 v à do đó hình th à n h
th u ậ t ngữ "hộ th ố n g trê n m ột vi m ạch” hay “h ệ th ố n g trê n chip”, tiếng A nh gọi là
‘;S v stem -o n -C h ip (SoC )’\ Hộ th ố n g trẽ n chip được b iết đến n h ư là m ột phương p h á p thiết ké gần đ â y n h ấ t cho ph ép tích hợp trê n h ệ th ố n g khoảng từ vài chục đ ế n vài tră m lõi IP n h ư đ ã kể trê n Việc tích hợp ngày càng nhiều khối IP lên trê n m ột vi
m ạch d ẫ n đến việc tă n g nhu cầu tru y ề n th ô n g trê n chip (tru y ề n th ô n g giữa các khối
ỈP với n h a u ) B ài to á n th iế t ké các hộ th ố n g trê n chip chuyển th à n h bài to án th iế t
kế kiến trú c tru y ề n th ô n g trê n chip [Arm03A]
Hệ thống trê n c h ip là m ô hìn h th iế t kế cho phép tích hợ p m ộ t m áy tín h hay một
hệ thống đ iện t ử ho àn ch ỉn h gồm nhiều lõi IP lên trẽ n m ột chip đơn Lõi IP có thể
là vi xử lý n h ú n g (//P ), khối xử lý tín hiệu số (D SP: D igital Signal P ro ceso r), các
bộ nhớ n h ư R A M và RO M , các khối v à o /ra n h ư E th e rn e t hay B lu e to o th , các khối
t h u /p h á t tầ n số ra d io (R F ), các khối M EM S, và các khối tín h to án khác [RajsOOS]
ứ n g d ụ n g đ iển hìn h c ủ a các hệ th ố n g trê n chip là các ứng d ụ n g tro n g lĩnh vực hệ
3
Trang 12tă n g hiệu s u ấ t tru y ề n th ô n g , tro n g cùng m ộ t hệ th ố n g có thổ có n h iều bus dùng chung, mỗi bu s được d ù n g đổ kết nối m ột số lõi IP n h ấ t đ ịn h nào đ ó (thư ờ ng là các lõi IP thư ờ ng xuyên tra o đổi th ô n g tin với n h au ) Đổ cho ph ép th ự c hiện việc truyền thông giữ a các lõi IP ỏ các b us khác nhau, các b us này dược nối với nhau bởi cầu b us (bus bridge).
hộ thống Bên cạnh đó, tro n g m ột số ứng d ụ n g yêu cầu về thời gian th ự c khiến cho các vấn đề tru y ề n th ô n g trở nên phức tạ p hơn C ùng với sự p h á t triể n củ a cóng nghệ bán dẫn, hộ th ố n g trẽ n chip với các kiến trú c tru y ề n th ô n g tru y ề n thống đă bộc lộ m ột số vấn đồ liên qu an đến hiệu năn g h o ạ t động, n ă n g lượng tiê u hao, thời gian trễ đ á p ứng trê n các k ết nối, trê n các cổng logic, về tru v ề n th ô n g cục bộ và toàn c ụ c hay các vấn đ ề liên qu an đến q u á trìn h sả n x u ấ t
V ấ n d ề v ề đ ộ t r ễ: C ông nghệ th iế t kế vi m ạch ngày c àn g p h á t triể n , kích
thước vi m ạch ngày càng tăn g , d ẫ n đến độ tích hợp trôn m ộ t chip ngày c àn g cao
Ví d ụ n h ư khi th iế t kc với công nghệ nhỏ hơn m icro (DSM : d eep sub m icro n ) th ì vấn đ ề về độ trễ ctậc b iệt q u a n trọ n g [SylvOOAỊ K hi đó, người th iế t kế c ầ n phải giải quyết các vấn đề liên q u a n đến độ trễ đ á p ứng củ a d â y d ẫ n cục bộ, dây d ẫ n toàn
Trang 13ỉ ỉ H Ệ T H Ố N G T R Ê N M Ộ T C H IP 5
cục và c ủ a các cổng logic Với các công nghệ mới độ trễ đ á p ứng giữ a đ ầ u r a và đầu vào củ a cổng logic r ấ t nhỏ, đặc biệt khi so với độ trỗ dây d ẫn Ngoài ra đ ộ trễ trên dây d ẫ n cục bộ tro n g các lõi IP cũng có sự chênh lệch khá lớn đối với đ ộ trỗ trên các d â y d ẫ n nối giữa các lõi với nhau N gay c ả đ ộ trễ trê n các dây dẫn to àn cục cũ n g có sự khác n h a u , khác n h a u giữa các dây nối các lõi IP ờ gần với các dây nối các lỏi IP ở xa N hư vậy, việc ch ia nhỏ cấu trú c bus d ù n g chung h ứ a hẹn có th ể giải q u yết được vấn đ ề về độ trễ trê n các dây d ẫ n dài
V ấ n đ ề đ ồ n g bộ t o à n c ụ c : Việc đ ạ t được sự đồng bộ to à n cục càng trở nõn
khó kh ăn khi kích th ư ớ c v à tố c độ chip càng tăn g C ác q u á trìn h xử lý tro n g chip dược chia n h ỏ th à n h các xử lý bẽn tro n g các lõi IP Khi đó m ỗi lõi IP sẽ có m ộ t xung clock riêng nên có sự đồng bộ cục b ộ riêng C hính vì th é rấ t khó đe đ ạ t được sự đồng
bộ to àn cục giữ a các xung clock c ủ a các lõi IP với n h a u T ừ đó người t a n g h ĩ ra
m ột giải p h á p mới gọi là hệ th ố n g đồng bộ cục bộ - dị b ộ to à n cục G A LS (G lobally
A synchronous - Locally Synchronous) [.Jant03N], Mỗi IP tro n g hộ th ố n g làm viộc với m ột xung clock riêng, đồng bộ cục bộ tro n g lõi, còn khi r a khỏi lõi, các IP làm việc với n h a u th ò n g q u a các phương thứ c h ỏ i/đ á p hay b ắ t ta y (h andshaking) Việc xây dự ng các hệ th ố n g lớn từ các lõi IP riêng có đặc trư n g th ờ i gian khác n h a u trở nôn dễ d à n g hơn
H i ệ u s u ấ t t h i ế t k ế : Sự p h á t triể n không ngừng c ủ a công nghộ tạ o ra you cầu
giảm th ờ i gian th iế t kế, ví d ụ t ừ n à m 1997 đến năm 2002 chu kỳ th iế t kế giảm tới 50% T h e m nữa, kích thướ c chip ngàv càng tăn g , việc th u gọn hình d ạ n g và tăn g
số lớp kim loại khiến độ phức tạ p c ủ a th iế t kế tă n g tới 50 lần tro n g cùng m ột chu
kỳ Do đó việc tá i sử d ụ n g các IP tro n g th iế t kế là cần th iế t Việc s ẵ n có tà i nguyên giúp các n h à th iế t kế có th ể th iế t kế ở mức trừ u tượng cao hơn, không cần th iế t ké ở mức tra n s is to r hay m ức cổng logic n ữ a m à có thổ th iế t kố ở m ức chuyển giao th a n h ghi (RTL: R e g iste r T ra n fe r Level), th ậ m chí ở m ức hàn h xử (behavior) (RajsOOSj
N hững lý do trê n tạ o nên xu hướng th iế t kế hướng tới việc chia n h ỏ các khối xử
lý n hằm giảm chu kỳ th iế t kế, chia q u á trìn h th iế t ké lớn th à n h các vấn đ ề con độc lập Điều này cũ n g cho p h é p á p d ụ n g các hệ phương p h á p kiểm t r a m ô-đun kiểm
tr a ở m ức trừ u tượng th ấ p c ủ a các lõi IP, ở m ức trừ u tư ợ ng cao củ a c ả hộ th ố n g hay két hợ p c ả hai L àm việc ở m ức trừ u tượng cao sẽ cho ph ép người th iế t kế th ự c hiộn các th a o tá c linh h o ạ t hơn ở các m ức trừ u tượng th ấ p Đ iều nàv cũ n g dẫn tới sự khác n h a u về tru y ề n th ô n g cục bộ và to àn cục Vì lv do đó, tro n g th iế t kế hệ th ố n g trên chip gồin n h iều lõi IP, người th iế t kế không chỉ q u a n tâ m đến vấn đề tru y ền
th ô n g bên tro n g từ n g lõi IP m à còn phải qu an tá m p h á t triể n cả tru y ề n thông to àn cục, d ẫ n tới phương p h á p th iế t kế hộ th ố n g trê n chip chuyển từ th ié t ké xử lý tậ p tru n g tru v ề n th ố n g sa n g th iế t kế x ử lý đồng thời tạ i các lõi IP K hi đó việc th iế t
kế m ột hệ th ố n g được ch ia nhỏ th à n h th iế t kế các m ô-đun riêng rẽ và được chuyên
Trang 14C H Ư Ơ N G 1 H Ệ T H Ố N G T R Ê N C H IP VÀ C Á C K I Ẻ N t r ú c t r u y ề n t h ô n g t r ê n
m ôn hóa cao v ấ n đ ề còn lại c ủ a th iế t kế hệ th ố n g chỉ ỉà việc x â y d ự n g kết nối giữa các m ô-đun đó, tạ o lên sự tru y ền th ô n g giữa chúng
T ro n g các m ạch tích hợp, kết nối tru v ề n th ố n g giữ a các khối chức n ă n g chủ yếu dự a vào m ạng kết nối ad-hoc và các kiến trú c b us dùng chung, xem h ìn h 1.2 [TranlOdam ]
K hi h ệ th ố n g trở nôn phức tạ p hơn các kiểu kiến trú c này bộc lộ n h iều hạn chế như:
th ô n g lượng tru y ề n th ô n g (th ro u g h p u t) bị giới h ạn , công s u ấ t tic u th ụ Iiãng lượng lớn, tín h to àn vẹn c ủ a tín hiệu không được đ ả m bảo, trỗ đ á p ứng tro n g q u á trìn h tru y ề n tín hiệu, vấn đề đồng bộ to àn hệ thống - N ếu chúng t a không cải thiện các phương p h á p kết nối tru y ề n th ố n g th ì những h ạ n chế này sẽ tạ o nên n ú t th ắ t cổ chai, hạn chế việc th iế t kế v à xây dựng các h ệ th ố n g tích hợ p [D allO lR, Beni02N\ Zcfe02A, RaduOSC]
(a ) K é t n ố i đ iể m -tớ i-đ iể m (b ) C h ia s c b u s
Hình 1.2: K iến trú c k ết nối tro n g các hộ th ố n g trê n chip
Với kiểu k ết nối ađ-hoc, truyền th ô n g giữ a các lõi I P được th ự c hiện th ô n g q u a các
liên kết vật lý trự c tiế p (liên k ết điểm -tới-điểm ) t ừ IP nguồn đ ế n IP đích, h ìn h 1.2(a)
Ưu điểm c ủ a kiểu kết nối này là chúng t a có được hiệu s u ấ t tru y ề n th ô n g tố i đ a giữa các đơn vị th a m g ia tru y ề n th ô n g (có th ổ sử d ụ n g tối đ a tà i nguyên băn g thông)
T u y nhicn, các cấu trú c tru y ề n thông kiểu 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 tro n g khi hiệu q u ả sử d ụ n g các liên kết này khô n g lớn, tầ n s u ấ t
sử d ụ n g vào khoảng 10% th eo nghiên cứu c ủ a D aily v à cộng sự [DallOlR.] Số lượng liên k ết lớn sẽ làm cho không gian th ự c th i ph ần cứng tă n g và ph ứ c t ạ p tro n g q u á trìn h đ ặ t chỗ và đ ịn h tu y ến (P lace & R oute) C h ín h vì vậy, cấu trú c tru y ề n thông
n ày sẽ trở nên phức t ạ p cho việc th iế t kế các hộ th ố n g trê n chip tro n g tư ơ ng lai do
số lượng các lõi IP ng ày càng nhiều hơn (số lượng các liên kết sẽ tă n g th e o cấp số
m ũ khi số lượng các lõi tăn g )
Trang 151.2 C Á C K I Ế N T H Ú C T R U Y Ề N T H Ô N G T R U Y Ề N T H Ố N G
D ể k h ác phục các nhược điểm c ủ a tru y ề n th ô n g điểm -tới-điểm , người t a ng h ĩ ra giải p h á p tru y ề n th ô n g b us n h ư m ô tả tro n g hình 1.2(b) Ngày nay với các hệ th ố n g trê n chip phức tạ p , tru y ề n th ô n g chia sẻ bu s là loại cấu trú c tru y ền th ô n g đượ c sử
d ụ n g phổ biến n h ấ t tro n g các ứng dụng thư ơ ng mại B us cu n g c ấ p giải p h á p kết nối đơn giản, hiệu q u ả m à q u a đ ó các lỗi IP có th ổ giao tiế p với n h a u th ô n g q u a m ột giao th ứ c tru y ền th ô n g N éu so sánh với kết nối điểm -tới-điểm th ì cấu trú c b us tỏ
ư u việt hơ n n hiều, k ết nối b u s k h á m ềm dẻo và dễ d à n g tá i sử d ụ n g T uy nhiên, cấu trú c bus chỉ cho p h é p th ự c hiộn m ỗi m ột q u á trìn h tru y ề n th ô n g giữa các lôi IP tại
m ộ t th ờ i điểm n h ấ t đ ịnh B ăng th ô n g c ủ a b us do đó được c h ia cho các IP và hiệu
s u ấ t tru y ề n th ô n g giảm d á n g kể khi số lượng các lõi IP tăn g C húng t a cần phải xây
d ự n g cơ chế p h â n xử đ ể q u ả n lý quyền tru y cập của các IP khi x u ấ t hiện các yêu
c ầ u đồng thờ i Hơn nữa, vì bus dùng cho c ả hệ th ố n g nên các liên kết hình th à n h
b u s có đ ộ d ài đ á n g kể D iều này làm tă n g công su ấ t tiê u th ụ chung củ a hệ th ố n g
v ì d ữ liệu được tru y ề n trố n to à n bus cho dù tru y ề n th ô n g chỉ th ự c hiện giữa vài lõi
IP K hi chúng t a tă n g số lượng lòi IP th ì độ dài của b us cũng tă n g và két q u ả là
t r ẻ tru y ề n d ẫ n d ữ liệu sẽ vượt q u á chu kỳ của xung đồng hồ (clock) [Grcc.04SỊ Q u a
n h ữ n g vấn đ ề trê n cho th ấy về b ả n c h ấ t m ó hình kết nối kiểu b u s có những hạn chế
n h ấ t địn h về khả năn g kết nối khi h ệ th ố n g tích hợp m ộ t số lượng lớn lõi IP
Đ ể v ư ợ t q u a m ộ t vài vấn đồ gặp phải nêu ở trê n , các n h à nghiõn cứu đ ã đồ x u ấ t
c ấ u trú c b u s p h â n tầ n g n h ư IBM C ore C o nncct c ủ a hãn g IBiM [IbmC'c] hay A R M
A M B A c ủ a h ã n g A R M [AmbaỊ Ý tưởng c ủ a giải p h á p này là sử d ụ n g n h iều bus
t rong c ù n g m ộ t hệ th ố n g và kết nối chúng với nh au thông q u a các cầu bus (bus
b rid g e ), xem hình 1.3
H ình 1.3: Mô hình bus p h â n tầng
Với ý tư ở n g này, chúng t a có th ể giảm số lượng lỗi IP kết nối trê n cùng m ột bus,
c h iề u d ài c ủ a các liên két do đó cũng được giảm đi đán g kể Mỗi bus sẽ có m ộ t bộ p>hân xử b us ricng T u y nhiên, giải p h á p này gặp phải m ột vấn đề là việc q u ả n lý đlịa chỉ các lõi IP sê trở ncn khó khăn hơn khi tru y ề n d ữ liệu q u a các cầu bu s (dữ liiệu được tru y ề n t ừ b u s này q u a b us khác th ô n g q u a cầu b u s) Ngoài ra, giải ph áp
m ày vần không th ể loại b ỏ các vấn đ ề cố hữu thuộc về bản c h ấ t c ù a cấu trú c tru y ề n
Trang 16b u s A M BA
Trang 17Chương 2
Kiến trúc truyền thông A M B A A H B
C hương trư ớc đ ã trìn h bày về khái niệm và xu th ế p h á t triể n c ủ a m õ hìn h hộ th ố n g trên chip Nội d u n g c ủ a chương cũng đ ã đồ c ậ p đến tầ m q u a n trọ n g c ủ a việc xây dựng cốc kiến trú c tru y ề n th ô n g tố c độ cao n hằm tă n g hiệu s u ấ t h o ạ t động củ a hộ thống th e o ycu cầu củ a các ứng dụng C hương này sè trìn h bày tổ n g qu an vồ hộ thống b us AMI3A A IIB , các đặc tính cơ bản v à nguyên lý h o ạ t dộng n hằm cung
c ấp các th ô n g tin cần th iế t cho ph ần nội d u n g th ự c nghiệm sẽ được trìn h bày tro n g hai chương tiếp theo
A H B
Kiến trú c bu s tiên tiến d ù n g cho vi điều khiển (A M B A -A dvanced M icrocontroller Bus A rc h ite ctu re [A M BA specj) là m ột kiến trú c bus d à n h cho các hệ thống trên chip được công ty A R M đ ư a r a lần đ ầ u tiên vào năm 1996 Q u a thời gian p h á t triể n ,
đ ến n a y kién trú c b us A M B A đ ã có đốn b a phiên b ản , phù hợ p với nhiều m ục đích tru y ề n th ô n g khác n h a u Mỗi phiên bản là sự nân g cấp tương ứng với sự phát, triể n
c ủ a hệ th ố n g trê n chip, cũ n g n h ư yêu cầu về tố c đ ộ và băn g th ô n g ngày càng cao
c ủ a các hộ th ố n g này B a phiên b ả n c ủ a hộ th ố n g b us A M BA lần lượt là:
• B us hệ th ố n g tiên tiế n ASB (A dvanced System Bus) v à bu s ngoại vi tiến tién
A P B (A dvanced P e rip h e ral Bus)
• Hệ th ố n g bu s tiên tiến hiệu năn g cao A IIB (A dvanced Iligh-pcrform ancc B us)
9
Trang 1810 C H Ư Ơ N G 2 K I Ế N T H Ú C T R Ư Y E N T H Ô N G A M B A AỈỈIÌ
• G iao tiếp m ở rộng tiê n tiến AXI (A dvanced e x te n s ib le In terface)
AHB là b us hộ th ố n g th ế hộ th ứ hai củ a AM BA với m ục đích hướng tới các th iế t
kố cần hiệu năn g cao D ây là m ột hộ th ố n g bus hỗ trợ đ a b us chủ và có k h ả năng
cu n g cấp bãn g th ô n g rộng với tố c độ truvền dữ liộu cao M ục đích c ủ a b us A IIB là
đ ể đ ả m bảo q u á trìn h tru v ề n d ữ liệu giữa các lõi I P cản độ rộng bu s d ữ liệu lớn và
tố c độ tru y ề n cao
M ột số đặc tín h c ủ a b us A M BA AHB:
• Truyền th ô n g th e o khối (b u rs t transfers)
• P h â n ch ia q u á (rìn h tru y ề n (split tran sactio n s)
• C huyển giao b us chủ trong m ộ t xung đơn
• T h ự c th i tạ i sườn củ a đơ n xung
• K hông d ù n g chuyển m ức b a trạ n g thái
• Độ rộng b us dfr liệu có th ể th a y đổi linh h o ạ t ( từ 8 bit lên đến 1024 bit)
H ình 2.1 m ỏ t ả cấu trú c cơ bản c ủ a m ột vi điều khiển có sử d ụ n g hệ th ố n g bus
A MB A AHB
AS B lũ APB Bndge
H ình 2.1: Mô hình vi điểu khiển có sử dụng b u s A H B và A P B [AM BAspec]
M ặc d ù b us A BM A A H B đ ã được chuẩn hoá m ột cách k h á đ ầ y đ ủ như n g cho
đ ế n hiện nay các nghiên cứu liên q u a n đến kiến trú c b u s A H B n h ư tối ư u hiệu năng
h o ạ t đ ộ n g / năng lượng tic u th ụ thông q u a việc đồ x u ấ t các th u ậ t to á n p h â n xừ cũng n h ư đ ư a r a các cơ c h ế / kiến trú c hỗ trợ q u á trìn h triể n khai n h ằ m giảm thời gian th iế t kế hệ th ố n g vẫn tiế p tụ c được thự c hiện T h e o [Conl ilMpao], công suất
Trang 19■2.2 M Ô H ÌN H M Ộ T H Ệ T ỉ ỉ ố N G A M B A A H B 11
tiêu th ụ trê n b us có thổ giảm đến 22% nếu b us AHB sử d ụ n g m ột th u ậ t toán p h â n
xử b us hợ p lý C ác nghiên cứu đ á n h g iá về hiệu s u ấ t tru y ề n th ô n g và công s u ấ t tiêu
th ụ của b us A M BA A H B cũng được th ự c hiện, chủ yếu là đ ể có th ế so sá n h với phương th ứ c tru v ề n th ô n g NoC vừa mới r a đời T uy những nghicn cứ u này ch ỉ ra rằn g hiệu s u ấ t c ủ a NoO vượt, trộ i hơn b us A H B, nhưng khả năn g h o ạ t động của bus AHB là hoàn to à n đ á p ứng đưực yêu cầu tru y ề n th ô n g c ủ a h ầ u hết các SoC hiện nay [K anishkaO lpao, C ald ari03slp, ShaíìxOSmbp] M ột hướng nghiên cứu về kiến trú c b us AM BA cũng đ a n g được chú ý, đó là viộc th iế t kế các hộ th ố n g bus AM BA
có khả năn g tá i cấu hình M ục đích c ủ a các nghicn cứu này là xây dự ng ncn các hộ thống bu s A M BA th ô n g m inh, có khả năng t ự cấu hình lại đ ể thích nghi với tìn h trạ n g tru y ề n th ô n g hiện tại của hộ thống Việc tá i cấu hình th ư ờ n g tậ p tru n g chủ yếu vào việc th a v đổi th u ậ t to án ph ân xử b us hoặc th av dổi c ấ u trú c b us để th íc h ứng với th ô n g lượng tru y ề n th ô n g c ủ a bus [Sedaghti06iafỊ
M ột hộ th ố n g A M B A A H B bao gồm những th à n h p h ầ n chính như: dơ n vị chủ bus, đơn vị tớ bus, bộ p h â n xử, bộ giải m ã đ ịa chỉ, các bộ ph ân kênh và được k ế t nối với n h a u n h ư hìn h 2.2 T rong đó, đơn vị chủ bua (bus m aster) cho phốp khởi động việc đọc và ghi b à n g cách cu n g cấp đ ịa chỉ và th ô n g tin đièu khiển Lưu ý rằ n g tại
m ột thời điểm th ì chỉ có m ột chủ bus được p h é p hoạt động C òn m ỗi đơn vị tớ bus (bus slave) sẽ đ á p ứng m ộ t h o ạ t động đọc hay ghi tro n g m ột khoảng không gian đ ịa
chỉ được đ ịn h trư ớc Cấc tín hiệu c ủ a đơ n vị tớ sẽ t r ả về cho đơn vị chủ bu s biết
q u á trìn h tru y ề n d ữ liệu th à n h công, th ấ t bại hay đ a n g được tiế n hành
Bộ p h â n xử b us (a rb ite r) được sử d ụ n g đ ể đ ả m b ả o tạ i m ột thời điểm chỉ có
d u y n h ấ t m ột b u s chủ đượ c ph ép thự c hiện q u á trìn h tru y ền d ữ liệu, đồng thời nó cũng qu ản lý th ứ t ự ưu tiê n tru y cập b us c ủ a các bu s chủ Bộ ph ân x ử b us chỉ tồn tại trong h ệ th ố n g b u s A H B có nhiều b us chủ Bộ giải m ã tín hiệu đ ịa chỉ (ad d ress decoder) được d ù n g đ ể giải m ã đ ịa chỉ c ủ a m ỗi lần tru y ề n v à cu n g cấp tín hiệu để lựa chọn đơn vị tớ cần tru y ề n đến C ác bộ p h â n kênh tín hiộu (m ultiplexor) là các
bộ ph ân kcnh tín hiệu đ ịa chỉ và tín hiệu d ữ liệu tro n g bus, để chuyển các tín hiệu này đến đơn vị chủ bu s chủ và đơn vị tớ đ a n g th a m gia vào q u á trìn h tru y ền th ô n g
K hi hệ th ố n g không có yêu cầu nào về tru y cập bus bộ p h â n xử b us sẽ cấp quyền tru y c ậ p cho m ột đơ n vị chủ bus, đơn vị chủ bus này được gọi là đơn vị chủ bus m ặc đ ịn h (default m a ste r) Vai trò c ủ a đơ n vị chủ bus m ặc đ ịn h có th ể được tra o cho m ột đơn vị chủ bu s b ấ t kỳ tro n g hệ thống, việc này được q u y đ ịn h bởi người th iế t kế h ệ th ố n g Dơn vị tớ m ặc địn h (default slave) là đơn vị bus tớ sẽ th a m gia vào q u á trìn h tru y ề n khi có m ột yêu cầu tru y ề n đến m ột đ ịa chỉ không nằm
Trang 20H ình 2.2: Kiến trú c bu s A M BA AHB [AM BAspccỊ.
tro n g bản đ ồ đ ịa chi Việc triể n khai đơn vị tớ m ặc đ ịn h là cần th iế t khi hộ thống không sử d ụ n g hết bản đồ đ ịa chỉ Đơn vị tớ m ặc địn h th ư ờ n g được th ự c th i trong
hộ th ố n g n h ư là m ộ t th à n h phần của bộ giải m ã đ ịa chỉ
T h e o n h ư hình 2.2, t ấ t c ả các đơn vị chủ bus sẽ p h á t q u ả n g b á tín hiệu đ ịa chỉ
v à tín hiệu điều khiổn đ ể th ô n g báo q u á trìn h tru y ền cần th ự c hiện Bộ p h â n xử sẽ
q u y ế t đ ịn h đơn vị chủ b us nào được quyền tru y c ậ p b us và điều khiển các bộ phân kcnh để chuyển tín hiệu c ủ a đơn vị chủ bus đ ó đến t ấ t c ả các đơn vị tớ Bộ giải
m ã đ ịa chỉ sẽ d ự a vào tín hiệu đ ịa chỉ để chọn r a đơn vị tớ th a m gia vào q u á trìn h truyền
Trang 212.3 H O Ạ T D Ộ N G C Ủ A H Ệ T H ố N G A M B A A I IB 13
Dể th iế t kố và xây d ự n g được hệ th ố n g bus A IIB đúng th eo đặc t ả c ủ a I1Ó th ì chúng
ta cần n ắ m rõ nguyên lý h o ạ t động c ủ a hệ thống bus này T h e o ỊAM BAspec] th i hoạt động c ủ a hộ th ố n g b u s A M BA AHB có th ể được m ô t ả n h ư sau
Đo b ắ t đ ầ u m ột q u á trìn h tru y ề n , đơn vị chủ bus phải gửi tín hiệu yêu cầu quyền tru y c ậ p bus đốn bộ p h â n xử Bộ ph ân xử sẽ qu an s á t trạ n g th á i tru y cập hiện tạ i
củ a các đơn vị chù b u s và gửi tín hiệu b á o hiệu khi nào đơn vị chủ b us dó đượ c sử
d ụ n g bus K hi m ộ t đ ơ n vị chủ bus được ph ép tru y cập bus, nó sẽ b ắ t đ ầ u m ột q u á trìn h tru y ề n bằn g cách p h á t đi các tín hiệu đ ịa chỉ và tín hiệu điều khiển N hững tín hiệu này sẽ cu n g c ấ p th ô n g tin về đ ịa chỉ, hướng tru y ề n và độ rộng của q u á trìn h tru y ề n , cũ n g n h ư b á o hiộu nếu đây là m ột q u á trìn h tru y ề n khối Hộ th ố n g
bu s hỗ trợ hai d ạ n g tru y ề n khối là: q u á trìn h tru y ề n khối với đ ịa chỉ tă n g và q u á trìn h tru y ền khối với đ ịa chỉ bị cuộn lại khi đén đ ịa chỉ biên
T rong các q u á trìn h tru y ề n , m ột bu s ghi dữ liệu sẽ được sử d ụ n g đ ể chuyển dữ liệu t ừ đơ n vị chủ bu s đến đơ n vị tớ và m ột b us đọc dữ liệu sẽ được d ù n g để chuyển
dữ liệu từ dơn vị tớ đến đơn vị chủ bus Mọi q u á trìn h tru y ề n đều b a o gồm: m ột chu kỳ cho việc tru y ề n tín hiộu đ ịa chỉ, điều khiổn và m ột hoặc nhiều chu kỳ cho việc tru y ền d ữ liệu C h u kỳ d à n h cho việc truyền đ ịa chỉ không cần m ở rộng d o tấ t
c ả các đơn vị tớ p h ả i lấy m ẫu đ ịa chỉ tro n g su ố t th ờ i gian tru y ền T uy nhiên chu
kỳ tru y ề n d ữ liệu lại có th ể được m ờ rộng nhờ vào tín hiệu H R E A D Y K hi ỏ m ức
th ấp , tín hiệu n à y sẽ tạ o r a m ộ t trạ n g th ái chờ tro n g q u á trìn h t ruyền và cho ph ép đơn vị tớ có th e m th ờ i gian đổ cung cấp hoặc lấy m ẫu dữ liệu
T rong m ột q u á trìn h tru y ề n , đơn vị tớ sẽ thông báo các trạ n g th á i hiện tạ i cù a
q u á trìn h tru y ề n bằn g cách d ù n g tín hiệu ph ản hồi H R E S P ị 1 : 0] T ín hiệu này gồm
bốn trạ n g th á i n h ư sau:
• OKAY: được d ù n g đổ báo hiệu q u á trìn h tru y ền đ a n g diỗn r a bình th ư ờ n g và
khi tín hiệu H R E A D Y chuyển m ức HIG H th ì báo hiệu là q u á trìn h tru y ề n đ ã
ho àn tấ t
• E R R O R : báo hiệu có m ộ t lỗi tro n g q u á trìn h tru y ề n đ ã p h á t sinh và d o đó
q u á trìn h tru y ề n không th à n h công
• R E T R Y v à S P L IT : c ả hai trạ n g th á i này đ ề u b á o hiộu q u á trìn h tru y ề n không
th ể ho àn th à n h ngay lập tức, nhưng đơn vị chủ b us có th ể tiếp tụ c th ử truyền lại
Trang 2214 C H Ư Ơ N G 2 K I Ế N T R Ú C T R U Y Ề N T I Ỉ Ỏ N G A M B A AIỈỈỈ
2.4 Các chế độ truyền thông của bus A M BA A H B
B us AM BA A H B hỗ trợ các chế độ tru y ề n th ô n g khác n h a u n h ằ m đ á p ứng yêu
c ầ u c ủ a ứng d ụ n g như: chế độ truyền th ô n g cơ bản không có trạ n g th á i đợi, l.ruyền
th ô n g cơ bản có trạ n g th á i đợi, tru y ề n th ô n g khối
M ộ t q u á t r ì n h t r u y ề n c ơ b ả n , k h ô n g c ó t r ạ n g t h á i đ ợ i (H ìn h 2.3) bao gồm 3 bước cơ bản:
• Dơn vị chủ bu s p h á t tín hiộu đ ịa chỉ và tín hiệu điều khiển lên bu s tạ i sườn
lên c ủ a xung HCLK.
• Đơn vị tớ sẽ lấv m ẫu đ ịa chỉ và th ô n g tin điều khiển ở sườn lcn c ủ a xung nh ịp tiếp theo
• Sau khi đơn vị tớ lấy m ẫu tín hiệu đ ịa chì và điều khiển, nó có th ể b ắ t d ầ u xử
lý v à p h á t tín hiệu d ữ liệu cũng n h ư tín hiệu ph ản hồi th íc h hợ p về cho đơn
vị chủ bus Dồng th ờ i đơn vị tớ S C p h á t tín hiệu H R E A D Y ở m ức cao đổ báo
hiệu q u á trìn h tru y ề n th à n h công
n ày được thự c hiện n h ư sau: ô đ ầ u p h a dữ liệu, đơn vị tớ sẽ đ ư a tín h iệu H R E A D Y
về m ức Ih ấ p đ ể báo hiệu q u á trìn h truyền chuyển q u a trạ n g th á i đợi Khi d ữ liệu
Trang 23X-Hình 2.4: Q u á trìn h tru y ề n th ô n g cơ bản có trạ n g th á i đợi trê n b us A M BA AHB.
Lưu V rằn g , với q u á trìn h ghi d ữ liệu, đơn vị chủ b us sẽ giữ d ữ liệu ổn định tro n g
su ố t các chu kỳ mở rộng C òn với q u á trìn h đọc dữ liệu th ì đơ n vị tớ chỉ phải cung cấp dử liệu vào cuối chu kỳ cuối cùng Khi m ột q u á trìn h tru y ề n được mở rộng như trên, nó sẽ tá c động đến việc mở rộng p h a đ ịa chỉ c ủ a q u á trìn h tru y ề n tiếp theo
n h ư chỉ r a tro n g hình 2.5 T a có th ể th ấy q u á trìn h tru y ề n đến đ ịa chỉ B có th ê m
Trang 2416 C H Ư Ơ N G 2 K Ỉ Ể N T R Ú C T R U Y Ề N t h ô n g A M I i A A I M
m ột chu kỳ đợi nên việc m ở rộng p h a dữ liệu c ủ a nó sẽ ảnh hưởng đ ế n việc mỏ rộng
p h a đ ịa chỉ c ủ a q u á trìn h tru y ề n đến địa chỉ c
Q u á t r ì n h t r u y ề n t h e o k h ố i ( b u r s t t r a n s f e r ) : Ngoài các chế đ ộ tru y ền cđ
b ản , hệ th ố n g bus A H B hỗ tr ợ q u á trìn h tru y ề n th eo khối bao gồm tru y ề n đơn, tru y ề n khối với chiều dài khối b ất kỳ, tru y ề n khối với các nh ịp 4 8 v à 16 G iao thức này hỗ trợ c ả hai kiểu tru y ề n là tru y ền khối với đ ịa chỉ tă n g d ầ n - tru y ề n khối t ăng (increm enting b u rst) và tru y ề n khối với đ ịa chỉ cuộn - tru y ề n khối cu ộ n (w rapping
b u rst)
Q u á trìn h tru y ề n khối với đ ịa chỉ tă n g d ầ n SC tru y c ậ p các vị t r í đ ịa chỉ m ột cách
tu ầ n tự và đ ịa chỉ của mỗi lần truyền tro n g tru y ề n khối tă n g th eo đ ịa chỉ c ủ a lần tru y ề n trư ớc Đối với q u á trìn h tru y ề n khối với đ ịa chỉ cuộn, nếu đ ịa chỉ b ắ t d ầ u của
q u á trìn h tru y ề n không trù n g với tổ n g số b y te tro n g khối (tổng byte = kích thước
* số nhịp (beats)) th ì đ ịa chỉ của các q u á trìn h tru y ề n sẽ bị qu av trỏ lại đến biên
T h ô n g tin về q u á trìn h tru y ền khối sẽ được cung cấp bởi tín hiệu H B U R S T \ 2 : u|
và có 8 kiểu tru y ền được đ ịn h nghĩa n h ư tro n g bản g 2.1
B ảng 2.1: C ác kiểu tru y ề n khối được bu s AM BA A IIB hỗ trợ
001 1NCR Truyền khối tà n g với độ dài b ấ t kỳ
010 W R A P 4 Truyền khối cuộn với n h ịp 4
011 IN C R 4 Truyền khối tă n g với n h ịp 4
100 W R A P 8 Truyền khối cuộn với n h ịp 8
101 IN C R 8 Truyền khối tă n g với n h ịp 8
110 W R A P16 Truyền khối cuộn với n h ịp 16
111 INCR16 Truyền khối tă n g với nh ịp 16
Trong m ộ t số trư ờ ng hợp, q u á trìn h tru y ền đơn có th ể được th ự c hiện bằn g cách
sử d ụ n g q u á trìn h tru y ề n khối tă n g có chiều dài b ất kỳ m à tro n g đ ó m ỗi khối truyền
SC có chiều dài bằng m ột M ột q u á trìn h tru y ề n khối tă n g có th ể có chiều dài bất
kỳ nh ư n g giới h ạ n là không được q u á 1 K B y t e s địa chỉ biên.
M ột q u á trìn h tru y ề n khối ta n g với n h ịp 4 được m inh h ọ a b ằ n g giản (tồ xung
ở hình 2.6 T rong q u á trìn h này, khối tru y ề n đ à u tiên được th ự c hiện ở đ ịa chỉ /(,00000038 C ác khối tiế p th eo sẽ có đ ịa chỉ tă n g tu ầ n tự với giá t r ị m ồi lần tă n g là
Abytes và kết thúc ở khối /ỉ00000044.
Trang 25V ’Ỵ obìb V Y bau* Y V ^ '^ Y Y
A A.&3.C A_A g».*oj A A H aiiiA A
VVD5E V ■ VDSi \ / *\/DSĨ Y "': ' VOỂI w
H ình 2.6: T ruyền khối tă n g với n h ịp 4
2.4.1 Thông báo về quá trình truyền của đơn vị chủ bus
Khi diễn r a m ột q u á trìn h tru y ề n thông, đơn vị chủ bu s sc th õ n g báo cho bộ ph ân
xử và đơn vị tớ về kiểu tru y ề n trô n g đan g được th ự c hiện Việc th ô n g báo này giúp cho bộ ph ãn xử v à đơn vị tớ có th ể b iế t được q u á trìn h tru y ề n nào đ a n g diễri ra
cũng như kết hợp cù n g với tín hiệu H B Ư R S T đổ giám s á t q u á trìn h tru y ền Diều
này cho ph ép bộ p h â n xử xác đ ịn h được th ờ i điểm th a y đổi các tín hiệu c ấ p quyền tru y c ậ p bus, dồng th ờ i báo cho đơn vị tớ b iết vồ tìn h trạ n g sẵ n sà n g c ủ a đơn vị chủ
bu s đé có thổ tru y ề n d ữ liệu m ột cách hợp lý C ác q u á trìn h tru y ề n trê n hộ th ố n g
bu s A H B có th ể là m ộ t tro n g bốn kiểu truyền: ID LE, BUSY, N O N SEQ , S E Q như dược trìn h bày tro n g bản g 2.2 Việc m ã hóa các kiểu tru y ề n này sỗ được thự c hiện
thông q u a tín hiệu H T R A N S tru y ề n t ừ bus chủ sang bu s tớ.
2.4.2 Phân chia m ột quá trình truyền
D ể sử d ụ n g bu s m ột cách hiệu q u ả, trá n h tìn h trạ n g bu s rỗi, AHB có th ể ph ân chia các q u á trìn h tru y ề n để tậ n d ụ n g th ờ i gian b us rỗi khi các đơn vị tớ cần nhiều thời gian hơn đổ xử lý d ữ liộu C ó hai phương p h á p đổ p h â n chia các q u á trìn h tru y ề n
đó là tru y ề n R E T R Y và tru y ề n S P L IT Hai phương p h á p n à y được thự c hiện tương
tự n h ư n h a u Sự k h ác n h a u giữ a hai phương p h á p chỉ là sự th a y đổi quvền ưu tiên tru y c ặ p b u s c ủ a bộ p h â n xử M ột q u á trìn h tru y ề n bị p h â n ch ia bao gồm các bước sau:
1 Dơn vị chủ bu s b ắ t đ ầ u q u á trìn h tru y ền theo cùng m ộ t cách n h ư các quá trìn h tru y ề n th ô n g th ư ờ n g khác v à p h á t đi các tín hiộu đ ịa chỉ và điều khiển
ĐAI H Ọ C Q U Ố C G I A H À NỘI llỳỤ N G 1A M IH Ò N G «ttv I h U v i ệ n
Trang 2618 C H Ư Ơ N G 2 K I Ế N T R Ú C T R U Y Ề N T H Ỏ N G a m ha A H B
B ảng 2.2: C ác th ô n g báo về q u á trìn h tru y ề n th ô n g trẽ n hộ th ố n g b u s AHB
00 ID L E B áo hiệu khô n g có q u á tr ìn h tru y ề n d ữ liệu
n à o đượ c th ự c hiện K iểu ID L E đượ c dùng khi m ột đơ n vị chủ b u s m ặc đ ịn h đượ c phép
sử d ụ n g bus C á c đơn vị tớ phải lu ô n cung
c ấ p m ột trạ n g th á i đợi với H R E A D Y ở mức
th ấ p và gửi p h â n hồi O K A Y đối với m ột quá trìn h ID LE
01 BUSY K iểu tru y ề n BU SY cho p h é p đơn vị chủ bus
th ê m các chu kỳ trố n g vào giữ a q u á trìn h tru y ề n khối Kiổu tru y ề n n à y báo hiộu rằng
đơ n vị chủ b u s vẫn đ a n g tiế p tụ c với m ột
q u á trìn h tru y ề n khối n h ư n g khối tru y ề n tiếp
th e o sẽ ch ư a đượ c th ự c hiộn ngay lập tức C ác đơn v ị tớ phải luôn c u n g c ấ p m ột trạ n g th ái đợi v à gửi p h ả n hồi O K A Y tư ơ ng t ự n h ư đối với m ộ t q u á trìn h ID L E Lúc này q u á trìn h tru y ề n SC bị đơ n vị tớ bỏ q u a
10 N O N S E Q B áo hiệu khối tru y ề n đ ầ u tiê n c ủ a m ột quá
trìn h tru v ẻ n khối hoặc là m ột q u á trìn h tru y ề n đơn T ín hiệu đ iề u khiển v à đ ịa chỉ khô n g licn q u a n đốn q u á trìn h tru y ề n trước đó
11 S E Q T ro n g chế đ ộ này, đ ịa chỉ khối tru y ề n hiện
tạ i sẽ liên q u a n đ ế n đ ịa ch ỉ khối tru y ề n ngay trư ớ c đó T h ô n g tin đ iều k h iển sẽ được sử
d ụ n g đ ể tín h r a đ ịa chỉ c ủ a khối tru y ề n hiện tại Đ ịa chỉ c ủ a khối tru y ề n sè b ằ n g đ ịa chỉ
củ a lần tru y ề n trư ớ c cộ n g với kích thước tru y ề n (tín h b ằ n g b y te)
Trang 274 Bộ ph ân x ử c h ấ p n h ậ n cho các đơ n vị chủ b us k h ác đượ c tru y c ậ p vào b u s để
sử d ụ n g , tù y th u ộ c vào sự th a y đổi quyền ưu tiên tr u y c ậ p ỏ tro n g b ộ ph ân xử
5 Khi đơn vị tớ đ ã s ẵ n s à n g đ e ho àn th à n h q u á trìn h tru y ề n , I1 Ó p h á t ra bit
tương ứng c ủ a b u s H S P L I T x đến b ộ p h â n xử đổ b á o hiệu cho (lơn vị chủ bus
tá i tr u y cập vào bus
6 Bộ p h â n xử sỗ q u a n sá l tín hiệu H S P L Ỉ T x tro n g m ỗi chu kỳ xung và khi có
b ấ t kỳ b it n à o c ủ a H S P L I T x đượ c p h á t r a b ộ p h â n xử sẽ lưu lại q u y ền ưu
tiên c ủ a đơ n vị chủ b u s tư ơ n g ứng
7 C uối cùng, b ộ p h â n xử sẽ cho phóp đơ n vị chủ bu s đượ c th ự c hiộn lại q u á trìn h tru y ề n Đ iều n à y có th ể không x ả y r a ngay lậ p tứ c nếu có m ộ t đ ơ n vị chủ b u s có q u v ền ư u tiê n cao hơ n đ a n g sử d ụ n g bus
8 Khi q u á trìn h tru y ề n đượ c tiế p tụ c th ự c hiện, slave sẽ k ét th ú c với m ột ph ản hồi O K A Y D ơn vị chủ b u s p h ả i x â y dự ng lại khối tru y ề n phù hợ p với q u á trìn h tru y ề n còn lại này
Hoạt, đ ộ n g p h â n x ử đượ c th ự c hiộn đ ể đ ả m b ả o chỉ có m ộ t đơn vị chủ b us đượ c tru y cập vào bu s ở tạ i b ấ t kỳ th ờ i đ iểm nào B ộ p h â n x ử th ự c h iện chức n a n g n à y bằng cách qu an s á t m ộ t số các yỗu c ầ u sử d ụ n g b u s k h ác n h a u và q u y ế t đ ịn h xem hiện tại đơn vị chủ bu s n à o đ a n g có m ức ưu tiê n sử d ụ n g b us cao n h ấ t Bộ p h â n x ử cũng
nh ận các yêu cầu t ừ đơ n vị tớ (n h ư yêu cầu ho àn t ấ t q u á trìn h tru y ề n S P L IT ) để
th ay đổi lại q u y ền tr u y c ậ p c ủ a các đơ n vị chủ bus
M ộ t q u á trìn h yôu c ầ u quyền tru y c ậ p b u s có th ể được m ô t ả n h ư sau : đơ n vị
chủ b us cần tru y c ậ p b u s sẽ sử d ụ n g tín h iệu H B U S R E Q x đ ể yêu c ầ u đượ c tru y
n h ậ p vào b u s và có th ổ yêu c ầ u tạ i b ấ t cứ chu kỳ x u n g n h ịp nào Bộ p h â n x ử sẽ lấy
Trang 282 0 C H Ư Ơ N G 2 K Ỉ Ế N t r ú c t r u y ề n t u ô n g A M B A A1IB
m ẫu yêu cầu tạ i sườn lên củ a xung nhịp và d ù n g m ột th u ậ t to án ưu tiên đ ể quyết địn h đơn vị chủ bu s kế tiế p được tru y cập bus T h ô n g thường, bộ p h â n xử sẽ chỉ chấp nh ận m ộ t đơ n vị chủ b u s khác khi m ột q u á trìn h tru y ề n khối đ ã hoàn th àn h
T uy nhiên, nếu được yêu cầu, bộ p h â n xử có th ể n g ắ t m ột q u á trìn h tru y ề n khối sớm đ ể cho đơn vị chủ b us có quvền ưu tiên cao hơn tru y n h ậ p vào bus N ếu đơn vị
chủ bu s yêu cầu kh ó a tru y cập th ì nó phải p h á t tín hiệu H L O C K x đ ể báo cho bộ
ph ãn xử ngăn không cho đơ n vị chủ b us khác tru y n h ậ p vào bus
B ộ ph ân xử b á o hiệu đồng ý cho m ột đơn vị chủ b us được p h c p tru y n h ậ p vào
bus bằn g cách p h á t tín hiệu H G R A N T x tương ứng với đơn vị chủ b us đó Khi q u á
trìn h tru y ề n hiện tạ i ho àn tấ t, đơn vị chủ b us đ ó sẽ được sở hữu b u s v à b ộ ph ân xử
sẽ th a y đổi tín hiệu H M A S T E R [ 3 : 0] để báo hiệu số đ ịn h d a n h c ủ a đơ n vị chủ bus
đó
Sau khi m ột bus chủ b ắ t đ ầ u m ột q u á trìn h tru y ề n , b us tớ sẽ q u y ế t đ ịn h XCIU q u á trìn h tru y ền nên tiến hàn h n h ư th ế nào T rong cấu trú c c ủ a hộ th ố n g bus AHB không cho ph ép b us chủ hủy m ột q u á trìn h tru y ền khi nó đ ã diễn ra
K hi m ột bu s tớ được th a m gia vào q u á trìn h tru y ề n , nó sẽ cu n g c ấ p các tín hiệu
p h ả n hồi để báo hiệu tìn h trạ n g hiện tạ i c ủ a q u á trìn h tru y ền T ín hiệu H R E A D Y
đượ c sử dụng đ ể m ở rộng m ột q u á trìn h truyền và nó h o ạ t động k ết hợp với một
tín hiệu p h ả n hồi khác ( H R E S P ị 1 : 0]) đổ cung c ấ p th em th ô n g tin về trạ n g th ái
c ủ a q u á trìn h tru y ề n C ó bốn loại ph ản hồi là OKAY, E R R O R , R E T R Y , S P L IT và
được quv đ ịn h bởi tín hiệu H R E SP ị 1 : 0] n h ư được m ô t ả tro n g bản g 2.3.
M ột đơn vị tớ có th ể hoàn th à n h m ột q u á trìn h tru y ề n th e o n h iều cách khác
nh au:
• H oàn t ấ t q u á trìn h tru y ề n ngay lập tức
• T hèm vào m ộ t hoặc nhiều trạ n g th á i đợi n hằm th êm thời gian cần th iế t để hoàn th à n h q u á trìn h truyền
• B áo hiệu lỗi đ c th õ n g b á o m ột q u á trìn h tru y ề n th ấ t bại
• T ạm hoãn sự hoàn tấ t của m ộ t q u á trìn h tru y ề n , nh ư n g cho p h é p đơn vị chủ
b us và đơn vị tớ th o á t khỏi bus để b us có th ể sẳ n sàng cho n h ữ n g q u á trìn h tru y ền khác
N hư vậy chỉ có q u á trìn h p h ả n hồi OKAY là được th ự c hiện tro n g m ột chu kỳ xung, còn các q u á trìn h ph ản hồi còn lại đều cần í t n h ấ t hai chu kỳ xung Trong chu
Trang 29■2.G P H À N H ồ i T H U Y Ề N C Ủ A D O N V Ị T Ớ 21
B ảng 2.3: P h ả n hồi tru y ề n t ừ đơn vị tớ
H R E S P ị 1 : 0] L o ạ i p h ả n h ồ i M ô t ả
00 OK AY C ùng với tín hiệu H R E A D Y ở m ức cao dơn
vị tớ báo hiệu m ột q u á trìn h tru y ền đ ã hoàn
tấ t N goài ra, ph ản hồi này còn được sử d ụ n g khi có bất kỳ chu kỳ nào được chèn th êm
tro n g lúc H R E A D Y ở m ức th ấ p , trư ớc khi
gửi m ột tro n g b a ph ản hồi còn lại
01 E R R O R C hỉ ra m ột lỗi đ ã p h á t sinh D iều kiện lỗi cần
được báo cho đơn vị chủ b us đổ cảnh báo q u á trìn h tru y ền đ ã th ấ t bại T a cần ít n h á t hai chu kỳ đổ gửi m ột điều kiện lỗi này
10 R E T R Y C h ỉ r a m ột đ ịa chỉ đ ã không th ự c hiện dược
tru y ề n th ô n g Đơn vị chủ b u s cần th ử gửi lại đ ịa chỉ v ừ a tru y ề n cho đến khi q u á trìn h tru y ề n hoàn tấ t P h ả n hồi này cũ n g cần hai chu kỳ xung
11 S P L IT Q u á trìn h tru y ề n ch ư a th ể hoàn th à n h ngav
Dơn vị chủ b u s sẽ tiế p tụ c q u á trìn h tru y ền đan g b ỏ dở vào lần được phốp tru y cập bus tiế p theo P h ả n hồi này cũng yêu cầu hai chu
kỳ xung
kỳ xung đ ầ u tiên, đơ n vị tớ đ ư a tín hiệu H R E A D Y về m ức th ấ p , đồng thời p h á t
ra ph ản hồi thích hợ p đ ể th ô n g báo cho đơn vị chủ bus b iết 0 chu kỳ ticp theo,
đơn vị tớ v ẫ n giữ nguycn tín hiệu p h ả n hồi H R E S P như n g đ ư a tín hiệu H R E A D Y
về lại m ức cao đ ể th ô n g b á o q u á trìn h ph ản hồi đ ã hoàn t ấ t Việc sử dụng hai chu
kỳ x u n g đ ể p h á t các p h ả n hồi E R R O R , R E T R Y , S P L IT là đ ể đơ n vị chủ bus cỏ đủ thời gian ho ãn q u á trìn h tru y ề n vừ a th ự c hiện v à th a y đổi lại q u á trìn h tru y ề n cho phù hợ p với p h ả n hồi được đơn vị tớ gửi đi
Nếu đơn vị tớ cần hơn hai chu kỳ xung đ ể quyết đ ịn h xem nồn đ ư a r a loại ph ản
hồi nào th ì nó cần p h á t p h ả n hồi OK AY , đồng th ờ i đ ư a HR E A D Y về m ức th ấ p để
có th êm m ộ t số chu kỳ đợi Sau đó, đơn vị tớ sẽ tiế p tụ c p h á t ph ản hồi thích hợp tro n g hai chu kỳ xung M ột ph ản hồi tru y ề n E R R O R có t.hổ được m inh hoạ bằng
giản đ ồ x u n g n h ư hìn h 2.7 T a th ấ y sa u khi p h á t đi đ ịa chỉ A tro n g p h a đ ịa chỉ thì tín hiệu H R E A D Y được chuyển xuống m ức th ấ p và p h á t g iá trị OK AY trẽ n tín hiệu H R E S P đ ể vêu c ầ u m ở rộng q u á trìn h tru y ề n Sau đó đơn vị tớ tiế p tụ c giữ
Ỉ Ỉ R E A D Y ở m ức th ấ p , như n g g iá trị củ a tín hiệu Ỉ I R E S P chuyển th à n h E R R O R
Trang 3022 C H Ư Ơ N G 2 K I Ế N T R Ú C T R U Y Ề N t h õ n g A M R A A H B
đ ể yêu cầu hủy q u á trìn h tru y ền do có lỗi p h á t sinh 0 chu kỳ tiếp theo, đơ n vị
tớ chuyển tín hiệu H R E A D Y lên cao nhưng vẫn giữ giá trị E R R O R trê n tín hiệu
H R E S P đổ hoàn t ấ t q u á trìn h p h ả n hồi lỗi và hủy bỏ đ ịa chỉ c ủ a khối tru y ề n đ ã
Hình 2.7: M inh hoạ ph ản hồi tru y ề n E R R O R
H ình 2.8 m inh hoạ m ột q u á trìn h tru y ề n với ph ản hồi R E T R Y T ro n g q u á trìn h
tru y ề n này, đơn vị chủ b us b ắ t đ ầ u m ột q u á trìn h tru y ề n tạ i đ ịa chỉ A T ại chu kv xung tiế p theo, đơn vị chủ b us truyền tiếp đ ịa chỉ là A + 4, nh ư n g d ữ liệu c ủ a A chưa
đượ c dờn vị tớ xử lý ngay lập tứ c nên đơ n vị tớ phải p h á t p h ả n hồi R E T R Y 0 chu
H ình 2.8: M inh hoạ ph ản hồi tru y ề n R E T R Y
kỳ xung T 3, đơn vị chủ b us p h á t đi m ộ t q u á trìn h đợi với tín hiệu H T R A N S có giá trị là ID L E để huỷ địa chỉ /1 + 4 và quay lại đ ịa chỉ A tro n g chu kỳ xung TA tiế p theo.
Trang 31•2.6 P H Ả N I I Ồ Í T R U Y Ề N C Ù A D Ơ N V Ị T Ớ 23
Tóm lại, chương này đ ã trìn h bàv tổng qu an về hệ th ố n g b us A M BA A H B , từ các khái niệm cơ b ả n đến nguyên lý hoạt động của các th à n h ph ần cấu th à n h hệ
th ố n g bus C ác nghiên cứu và triể n khai về hệ th ố n g bu s A M B A AHB cũng được
đề cập n hằm cung cấp m ộ t cái nhìn khái q u á t và tương đối đầy đủ về tìn h hình nghiên cứu v à ứng d ụ n g hộ th ố n g bu s AM BA A H B Irong các ứng dụng hệ th ố n g nhúng C ác chương tiế p th eo sẽ trìn h bày p h ầ n th ự c nghiệm c ủ a đề tài
Trang 32Chương 3
Th iết kế và mô hình hoá hệ thống bus A M B A AHB
Với địn h hướng p h á t triể n các hộ th ố n g ứng dụng tro n g lĩnh vực đ a phương tiện, việc nghiên cứu, th iế t kế và triể n khai m ột hộ th ố n g bu s AHB tốc độ cao nhằm
đ ả m bảo các yêu cầu về tru y ề n th ô n g c ủ a hệ th ố n g là r ấ t cần th iế t Tại phòng th í nghiệm Hệ th ố n g tích hợ p th ô n g m inh (SIS), chúng tô i đ a n g xây dự ng m ột platform
hệ th ố n g trê n chip có sử d ụ n g vi xử lý A R M n h ư m ô t ả n h ư tro n g hình 3.1 T rong
dó các lõi IP hiệu n ă n g h o ạ t động cao và lưu lượng tru y ề n th ô n g lớn được k ết nối với nh au th ô n g q u a hộ th ố n g b us tố c độ cao A H B n hằm đ ả m bảo ycu cầu tru y ền thông C ác lõi IP có hiệu năn g h o ạ t động th ấ p hơn n h ư G P IO , Ư S A R T được kết nối với b us A P B Hai h ệ th ố n g bus này được kết nối với nh au th ô n g q u a cầu bus Trong khuôn khổ đ ề tài này chúng t a chỉ đề cập đến b us AHB
Với yêu cầu đ ặ t ra c ủ a nhóm ứng dụng trô n cơ sở platfo rm C oM oSy không quá phức t ạ p nôn đ ể dỗ d à n g hơn tro n g việc th iế t kế và th ự c th i bu s A H B, m ục tiê u của
đồ tà i hướng đến việc th iế t kế m ộ t hộ th ố n g b us có thổ hỗ trợ 2 đơn vị chủ bus và 4 đơn vị tớ T u v nhiên, về lv th u y ế t hệ th ố n g b us nàv vẫn có th ể được p h á t triể n đc
có th ể mở rộng k h ả n ă n g hỗ trợ giao tiế p lên đến 16 đơn vị chủ bus và 16 đdn vị tớ Ngoài ra đ ể th u ậ n tiệ n tro n g việc p h á t triể n các ứng dụng khác nh au từ platform này chúng tôi cũ n g n h ắ m tới việc xây dựng cốc đơn vị chủ b us và đơn vị tớ này như là các m ô-đun giao tiế p (gọi là b us m a ste r w ra p p e r và b us slave w ra p p e r), cho phép hộ th ố n g b u s có th ể giao tiế p được với nhiều loại lõi IP khác nh au m à không cần phải th a y đổi nhiều về cấu trú c
25
Trang 33Hình 3.1: P latfo rm hệ th ố n g trẽ n chip CoMoSy.
Hệ (hống bu s sau khi th iế t kế được mô hình h o ả bằn g ngôn n g ữ m ô tả phần cứng V H D L ừ m ức chuyển giao th a n h ghi (R T L ) Việc xây dự ng m ô h ìn h hộ thống
bu s ở m ức R T L cho p h é p chúng t a d ễ dàn g tổng hợp p h ầ n cứng s a u khi tiến hành
m ô phỏng và kiểm t r a ở m ức lô-gic Với ycu cầu đ ặ t r a n h ư trô n , c h ú n g tỏi đồ xuất
m ô h ìn h kiến trú c c ủ a hộ th ố n g bus A H B sè xây dự ng n h ư m ô t ả tro n g hình 3.2
T h eo m ô hình này, hệ th ố n g bus A H B có các đ ặc điểm sau:
• Bao gồm 2 đơ n vị chủ bus, M I và M2 T rong đó, đơn vị chủ b u s M2 đóng vai trò đơn vị chủ bu s m ặc định T a g iả th iế t đơn vị chủ bu s M 2 có m ức ưu tiên
th ấ p hơn đơn vị chủ b us M I tro n g q u á trìn h p h â n quyền ưu ticn
• B ao gồm 4 đơ n vị tớ, ký hiệu lần lượt là S i , S2, S3, và S4 T ro n g đó, đơn vị
tớ SI có hỗ trợ p h ả n hồi truyền S P L IT T a giả th iế t rằ n g h ệ th ố n g sỗ sử dụng
t ấ t c ả 32 b it đ ịa chỉ trong bản đồ đ ịa chỉ nén không cần sử d ụ n g đến đơn vị
tớ m ặc định
Có đ ộ rộng b u s cố đ ịn h (32 b its), phù hợp với độ rộng bu s c ủ a vi xử lý trung
tâ m được sử d ụ n g tro n g hệ thống CoMoSy
Với các đơn vị tớ ngoài các tín hiệu m ặc đ ịn h th e o m ô t ả kỹ th u ậ t của bus
AM BA AHB th ì được d ư a th êm m ột tín hiệu gọi là H R E A D Y in với mục
đích hỗ trợ đơn vị tớ giám sát q u á trìn h tru y ề n đan g diễn r a v à biết được lúc
Trang 343.1 B À I T O Á N T H I Ế T K Ế 27
H ình 3.2: Kiến trú c hệ th ố n g bu s A H B xây dựng
Trang 35b ộ p h â n xử bu s và b ộ giải m ã địa chỉ) Dộ phức t ạ p khi triể n khai bộ ph ân
x ử v à b ộ g iải m à đ ịa chỉ đ ộ c lậ p với các b ộ p h à n k c n h c ũ n g SC g iả m đ i đ á n g
kể so với việc tích hợp chung các th à n h p h ầ n này với nhau
• Bộ ph ân xử bu s vừa th ự c hiện việc p h á n quyền tr u y c ậ p cho cá c đơ n vị chủ bus, đồng thời điều khiển các bộ ph án kênh tín hiệu đé đ ả m b ả o q u á trìn h chuyển giao tín hiệu đ ịa chỉ, điều khiển và cũng n h ư d ữ liệu đượ c d iễn r a m ột
cách chính xác Vì vậy, ngoài tín hiệu H M A S T E R ị S : 0] đượ c s ử d ụ n g đ ể báo
số định d a n h c ủ a đơn vị chủ b us đan g sở hữu b us đồng thời đvíỢc sử d ụ n g để điều khiển bộ ph ân kônh tín hiệu đ ịa chỉ và điều khiển Bộ p h á n xử được đ ư a
thòm hai tín hiệu là M ư x _ D A T A _ C T R \ 3 : 0] và M U X _ S 2 M đ ể điều khiển
các bộ p h à n kênh cho các bu s tín hiệu ghi v à đọc d ữ liệu
• Để việc giao tiế p giữa các lõi IP với hệ th ố n g b us được th ự c hiện m ộ t cách dẽ dàng, đồng thời đ á p ứng được yêu cầu là hệ th ố n g b us phải có k h ả năn g giao tiế p với nhiều loại lõi IP khác n h a u , tro n g m ô h ìn h này ('húng tô i đ ề x u ấ t đư a thêm các tín hiệu giao tiẻp b ắ t ta y vào tro n g hệ th ố n g Đ iều nậy giúp cho hệ
th ố n g b us A H B được độc lập với lõi IP và khi tích hợ p lõi IP với hộ th ố n g bus
t a không cần phải sử a lại cấu trú c của hộ thống C ác tín hiệu b ắ t ta y n à y bao gồm: tín hiệu yêu cầu, tín hiộu hồi đ áp , các tín hiệu về đ ịa chỉ v à d ữ liệ u để giúp lõi IP có th ể bắt ta y v à tra o đổi dữ liệu với đơn vị chủ b u s và đơn vị tớ
C ác tín hiệu này bẽ được m ô t ả cụ th ể tro n g các p h ầ n tiế p theo
C ó th ể th ấ y răng, tro n g m ô hình đ ề x u ấ t này bộ p h â n xử b us đ ó n g vai trò đầu
n ã o c ủ a hộ th ố n g v à q u y ế t địn h hiệu năn g làm việc của hệ th ố n g tro n g từ n g ứng
d ụ n g cụ th ể Mô hìn h ph ân quvcn c ủ a bộ p h â n xử bu s với các m ức ư u tiê n khác
n h a u sẽ được m ô t ả n h ư tro n g phân m ục sau
Trang 363.1 B À I T O Á N T H I Ế T K É '29
3.1.1 M ô hình phân quyền của bộ phân xử bus
Do hộ th ố n g bus được xây dự ng chỉ bao gồm hai đơn vị chủ b us và hộ th ố n g bus
có hỗ trợ tru y ề n R E T R Y và S P L IT nôn m ô hình ph ân quyền của bộ ph ân xử cũng được th iế t kế th eo m ục tiêu ph ân quyền ưu tiên giữ a hai đơn vị chủ bus, đồng thời giám sát q u á trìn h tru y ề n đổ th ay đổi th ứ tự ưu tiên c ủ a hệ th ố n g khi có m ột yêu cầu R E T R Y hoặc S P L IT từ đơn vị tớ
Mô hình p h â n quyền c ủ a bộ ph ân xử được xây dự ng th eo những nguyên tắ c sau:
• Dơn vị chủ b us M I có mức ưu tiê n cao hơn Do đó, khi có hai yêu cầu tru y cập bus đồng thời th ì đơn vị chủ bus M I sẽ được ưu tiên tru y cập trước
• Nếu c ả hai đơn vị chủ bu s không yêu cầu tru y c ậ p th i bộ p h â n xử sê cấp quyền tru y c ậ p cho đơn vị chủ b us M2 và cũng là đơ n vị chủ bu s m ặc định
• K hi m ột tro n g hai đơ n vị chủ bu s đan g thự c hiện q u á trìn h tru y ề n khói th i đơn vị chủ b us k ia chỉ được tá i tru y c ậ p b us sa u khi q u á trìn h tru y ề n khối đ ã
k ết th ú c cho dù đơ n vị chủ b us đó có quyền ưu tiên cao hơn M ột đơn vị chủ
b us chỉ có thổ được tru y cập bus vào giữ a m ộ t q u á trìn h tru y ền khối khi q u á trìn h tru y ề n dó có m ộ t yẽu cầu R E T R Y hoặc S P L IT
• Nếu đơn vị chủ b us M I đan g th ự c hiện truyền khối và có m ột yêu cầu R E T R Y
th ì m ức ưu tiê n tr u y c ậ p c ủ a hệ th ố n g là không th a y đổi Đơn vị chủ b us M I vẫn giữ quyền tr u v c ậ p b us v à th ự c hiện việc tru v ề n lại đ ịa chỉ vừa p h á t ra
T uy nhiên, nếu đơ n vị chủ bu s M2 đan g thự c hiện m ột q u á trìn h truyền khối
và cũng bị yêu cầu R E T R Y từ đơ n vị tớ th ì nó có th ể phải tr ả lại quyền tru y
c ậ p cho đơ n vị chủ b us M I nếu đơn vị chủ bu s này đan g yêu cầu được tru y
c ậ p bus
• Nếu m ột tro n g hai đơn vị chủ bus đan g thự c hiện tru y ề n khối và có yêu cầu
S P L IT t ừ đơ n vị tớ th ì lúc này quyền tru y cập b u s sẽ được chuyển cho đơ n vị chủ b u s kia N ếu sa u yêu c ầ u S P L IT m à không có đơn vị chủ b us n à o m uốn
th ự c hiện m ộ t q u á trìn h tru y ề n th ì b ộ ph ân xử sê chuvổn quyền tru y c ậ p cho đơn vị chủ bu s m ặc địn h (M 2)
Bên cạnh m ô h ìn h ph ân quyền v ừ a được đ ề x u ấ t n h ư ỡ trê n th ì vẫn còn tồn tại nhiều th u ậ t to án khác đổ ph ân quyền ưu tiôn tro n g hộ th ố n g bu s AHB Việc sử dụng các th u ậ t to án p h â n quyền khác n h a u sẽ ảnh hưởng khác nh au đến hiệu năng
củ a hộ th ố n g Do đ ó viộc xây dự ng các th u ậ t to án ph ân quyền và đ á n h giá hiệu su ất
hệ th ố n g giữ a các m ô h ìn h đó là m ộ t tro n g những hướng p h á t triể n q u a n trọ n g c ủ a
đ è tà i này
Trang 3730 C H Ư Ơ N G 3 T I I I Ế T K E VẦ M Ô H ÌN H H O Á H Ệ T Ỉ I ố N G B U S A M B A A i m
Ngoài việc đề x u ấ t r a m ô hình p h â n quyền bu s cho riêng hệ th ố n g vừ a được
th iế t kế, đ ề tà i còn đề x u ấ t xây dự ng m ộ t giao diện gh ép nối giữ a đơ n vị chủ bus,
đơ n vị tớ với các lõi IP để cho ph ép p h á t trié n hộ th ố n g b us ho àn to à n độc lập với các lõi IP (n h ư đ ã dược trìn h b à y tro n g p h ầ n đ ặc t ả hệ th ố n g ) Vì vậy, các phần tiế p th eo sẽ trìn h bàv cụ th ể về các tín hiệu b ắ t ta v giữ a đơn vị chủ bus, đơn vị tớ với các lõi IP
3.1.2 M ô hình giao tiếp giữa đơn vị chủ bus và lõi IP
Đổ th ự c hiện việc b ắ t ta y giữa đơn vị chủ bu s và lõi IP, sa u khi th a m khảo chuẩn giao tiế p mở c ủ a O pcnC ore [0 e p 0 3 0 ], chúng tô i đ ã đ ề x u ấ t giao diện gh ép nối giữa đơn vị chủ bus và lõi IP n h ư được m ô t ả tro n g hình 3.3
IP
c o r e
IP_R£Q MAS ACK
H W M T B P
R eadyR Valid w
R c a d y J P
ERROR.
M a s t e r
H ình 3.3: G iao tiế p giữa đơn vị chủ bu s v à lõi IP
Diểm tương đồng giữ a các tín hiệu giao tiế p này với chuẩn giao tiế p c ủ a O penC ore
là sử dụng các tín hiệu I P _ R E Q và M A S _ A C K đ ể thự c hiện q u á trìn h b ắ t tay T ín hiệu về q u á trìn h tru y ề n cần th ự c hiộn R E Q _ D A T A và tín hiệu th ô n g b á o trạ n g thái
th à n h công củ a q u á trìn h tru y ề n ( Valid_ w và Ready R) cũ n g h o ạ t động tương tự
nh ư chuẩn giao tiế p c ủ a O penC ore Bên cạnh đó, chúng tô i đ ề x u ấ t đ ư a th ê m cốc
tín hiệu ph ản hồi t ừ đơn vị chủ b us (Ready_ I P và E R R O R ) , đồng th ờ i tá c h bu s dữ
liệu r a th à n h bu s dọc v à b u s ghi đ ể phù hợ p với h ệ th ố n g b u s A H B C ác tín hiệu giao tiế p này được m ô tả chi tiế t n h ư sau
K hi yêu cầu m ột q u á trìn h tru y ền trẽ n hộ th ố n g bus, lõi I P sẽ gửi tín hiệu yêu
c ầu I P R E Q và d ữ liệu về q u á trìn h trìn h tru v ề n cần th ự c hiện R E Q DA TA ị3 : 0;
đến đơn vị chủ bus Đơn vị chủ bus sẽ xử lý các tín hiệu và gửi đi vêu cầu tru y cập
Trang 383.1 B À I T O Á N T I H É T K É 31
cũng n h ư th ô n g tin về q u á trìn h truyền c ầ n th ự c hiện Khi đơn vị chủ bu s đượ c bộ
ph ân xử cấp quyền tru y c ậ p bus th ì nó sẽ p h ả n hồi cho lõi IP b iế t th ô n g q u a tín
hiệu M A S ACK.
S au khi được đơn vị chủ b u s được ph ép sử d ụ n g bus, lõi IP sẽ cung cấp các tín
hiệu đ ịa chỉ I I A D D R i p và tín hiộu th ô n g báo q u á trìn h là q u á trìn h đọc hoặc ghi
dữ liệu H W R I T E i p C ác d ữ liệu c ủ a q u á trìn h đọc hoặc ghi sỗ được lõi IP tru y ền cho đơ n vị chủ b us th ô n g q u a bus đọc dữ liệu H R D A T A i p hoặc bu s ghi d ữ liệu
H W D A T A i p C ác d ữ liệu này SC được đ ư a lẽn đơn vị chủ bus cù n g lúc với tín hiệu
địa chỉ HA D DR i p Viộc xử lý q u á trìn h tru y ền sau đó sẽ do đơn vị chù bus đảm
n h ậ n T ro n g q u á trìn h tru y ề n , lõi IP có th ể th ô n g báo cho đơn vị chủ bus biết dữ
liệu ghi đ ã được sẵ n sà n g hay chưa th ô n g q u a tín hiệu Valid w , cũng n h ư th ô n g
báo d ữ liệu đ ã đọc th à n h công th ô n g q u a tín hiệu Ready_ R Ngược lại, đơn v ị chủ
bus c ũ n g có th ể th ô n g báo lại cho lõi IP biết về tìn h trạ n g c ủ a q u á trìn h tru y ề n
th ô n g q u a các tín hiộu Ready I P và E R R O R H oạt động c ủ a các tín hiệu này sẽ
được m ô t ả cụ th ể tro n g p h ầ n m ô t ả tín hiệu của đơn vị chủ bu s (m ục 3.2)
3.1.3 Mô hình giao tiếp giữa đơn vị tớ và lõi IP
G iao tiế p b ắ t tay giữa đưn vị tớ và lõi I P được đ ề x u ấ t n h ư tro n g hình 3.4 T h e o đó,
„ HR DATAIp
M -H ình 3.4: G iao tiế p giữ a đơn vị tớ và lõi IP
khi đ ơ n vị tớ đượ c chọn để th a m gia vào m ột q u á trìn h tru y ề n , nó sẽ thông b á o cho
lõi IP ìbict th ô n g q u a tín hiệu S L _ REQ Đ ồng thờ i, đơ n vị tớ S C cu n g cấp tín hiệu
hướng tru y ề n (q u á trìn h đọc hoặc ghi) th ô n g q u a tín hiệu H W R I T E i p và tín hiệu
đ ịa c h ĩ H A DD R ip Lõi IP sc th ô n g báo tìn h trạ n g sẵn sàng tru y ề n d ữ liệu th ô n g
Trang 3932 C H Ư Ơ N G 3 T I Ỉ I Ế T K Ẻ VÀ M Ô H ÌN H H O Á H Ệ T H ố N G B U S A M B A A H B
q u a tín hiệu I P O K A Y Dĩr liệu đọc v à d ữ liệu ghi sẽ được tru y ề n th ô n g q u a bus
H R D A T A ip và H W D A T A i p
T rong q u á tr ìn h tru y ề n , lõi I P có th ổ tạ m ngừng viộc đọc hoặc ghi d ữ liệu
đ ể có th ê m th ờ i gian x ử lý th õ n g q u a các tín hiệu I P _ O K A Y , I P R E T R Y hoặc
Ỉ P S P L I T T ill hiệu I P E R R O R được lõi I P sử d ụ n g đ ể th ô n g b á o cho đơn vị tớ
b iế t m ột q u á trìn h dọc hoặc ghi đ ã th ấ t b ại Dơn vị tớ cũng sẽ th ô n g báo cho lõi
IP biết tr ạ n g th á i b ậ n c ủ a hộ th ố n g bu s A H B th ô n g q u a tín hiệu S L _ Ready H oạt
động c ủ a các tín hiệu b ắ t ta y n à y sẽ được đồ c ậ p m ộ t cách cụ th ổ ở p h ầ n m ô tả tín hiệu củ a đơ n vị tớ (m ục 3.3)
3.2.1 Các tín hiệu trên đơn vị chủ bus
San khi đ ư a th ê m các tín hiệu b ắ t ta y với lõi I P th ì đơ n vị chủ b u s sẽ bao gồm các tín hiệu đượ c biểu diễn n h ư tro n g h ìn h 3.5 C ác tín hiệu này có th ể đượ c c h ia làm hai nhóm là; n h ó m các tín hiộu giao tiế p ngoài (b ắ t ta y với lõi IP ) v à các tín hiệu kết nối tro n g (g iao tiế p g iữ a đơ n vị chủ b u s với các th à n h ph ần khác tro n g h ệ thống bus) C ấu trú c , chức n ă n g v à h o ạ t động c ủ a các tín hiộu này được m ô t ả cụ th ể như sau
Used to estab lish h a n d s h a k e
protocol betw een bus
a rch itectu re and IP co re
( N o tific a tio n ) U sed to
between the bus protocol and core ' ' " n x r if f lf iiiS B h w w t a I Protoco1
H W O A T A
a ) N h ó m t í n h i ệ u g i a o t i ế p n g o à i:
Trang 403.2 D O N V Ị C H Ủ B U S 33
• I P R E Q (lối vào): T ín hiệu có đ ộ rộng 1 b it, được lõi IP sử d ụ n g đ ể yêu càu
m ột q u á trìn h tru y ề n Tín hiệu này sẽ có m ức cao khi lõi IP yôu cầu m ộ t quá trìn h tru y ề n v à ở m ức thấp nếu q u á trìn h tru y ề n được c h ấ p n h ậ n (được đơ n vị
chủ b us báo th õ n g q u a tín hiệu M A S _ À C K ) N ếu lõi IP vẫn m uốn th ự c hiện
tiếp m ột q u â trìn h tru y tn tiế p sa u q u á trìn h v ừ a đượ c c h ấ p n h ậ n th ì cần duy
tri I P _ R E Q ở m ức cao cho đ ế n khi không m uốn th ự c hiện th è m q u á trìn h
tru y ề n nào nữa
• M A S _ A C K (lối ra): T ía hiệu có độ rộng 1 b it đượ c đơ n vị chủ b us sử d ụ n g
đ ể th ô n g báo cho lõi IP biết yêu c ầ u tru y ề n đ ã đượ c c h ấ p n h ậ n T ín hiệu này
có giá trị ở m ức cao khi q u á trìn h tru y ề n b ắ t đ ầ u p h a đ ịa chì đ ầ u tiê n v à giữ nguyên tro n g su ố t q u á -.rình tru y ề n G iá trị c ủ a tín hiệu này chì chuyển về
m ức th ấ p khi kết th ú c pha d ữ liệu cuối cù n g c ủ a q u á trìn h tru y ề n đó
• R E Q _ DATA[3 : 0| (lối \ào ): T ín hiệu có đ ộ rộng A b it, đượ c lõi IP sử d ụ n g để
th ô n g báo về q u á trìn h ĩru y ề n c ầ n th ự c h iện T ro n g đ ó R E Q DA TA [3] được
sử d ụ n g đ ể yêu cầu các quá trìn h tru y ề n bị kh ó a còn R E Q DA TA [2 : 0] dùng
đ ể th ô n g báo về m ộ t quá trìn h tru y ề n là tru y ề n đơn h a y tru y ề n khối
• Ready_ R, Valid w (lối vào): C á c tín h iệu có đ ộ rộng 1 b it, đượ c lõi I P sử
d ụ n g d ể th ô n g b á o đ ã sẵn s à n g đ ể đọc hoặc ghi d ữ liệu T ro n g q u á trìn h tru y ề n khối, khi m ột tro n g hai tín hiệu này ở m ức th ấ p (tư ơ n g ứ n g với q u á t r ì n h là đọc hay ghi d ữ liệu) th ì n g h ĩa là khối tru v ề n tiế p th e o c h ư a s ẵ n sà n g v à đơn
vị chủ b us p h ả i p h á t đi m ộ t tr ạ n g th á i tru y ề n BU SY
• H W R I T E i p (lối vào): T ín hiệu c ó độ rộng 1 b it, đượ c lõi IP sử d ụ n g đ ể yêu
cầu m ộ t q u á trìn h Iruvền ghi d ữ liệu (khi tín hiộu ở m ứ c cao) hoặc đọc dữ liệu (khi tín hiệu ở m ức th ấ p )
• Ready_ I P (lối ra): T ín hiệu có độ rộng 1 b it đượ c đơn vị chủ b u s sử d ụ n g để
th ô n g b á o đ ã sẵ n sà n g dữ liệu c h o q u á trìn h đọc hoặc ghi Với q u á trìn h ghi, tín hiệu n à y khi ở m ứ c c a o sẽ th ô n g b á o q u á trìn h ghi đ ã ho àn t ấ t v à đ ịa chỉ
c ủ a khối tic p th e o có thổ đ ư ợ c đ ư a lên Với q u á trìn h đ ọ c, khi ở m ức cao, tín hiệu này th ô n g báo d ữ iiộu đ ợ c đ ã được đ ư a lcn b u s đ ể lõi IP có th ể đ ọ c về
• E R R O R (lối ra): T ín h iệu có độ rộng 1 b it K h i có m ức cao, tín h iệu th ô n g
b á o cho lõi IP b iết q u á trầ n h tru y ề n đ ã bị ho ãn do lỗi p h á t sin h ở đơ n vị tớ (tư ơ ng ứng với ph ản hồi tr u y ề n E R R O R )
• H A D D R i p [ 3 ỉ : 0] (lối vào): T ín hiệu có đ ộ rộng 32 b it đ ư ợ c lõi IP sử d ụ n g đổ
tru y ề n đi tín hiệu đ ịa chỉ c ủ a khối Iru v ề n cần th ự c hiện