a) Nhóm tín hiệu giao tiếp ngoài:
- IP_REQ (lối vào): Tín hiệu có ñộ rộng 1 bit, ñược lõi IP sử dụng ñể yêu cầu một quá trình truyền. Tín hiệu này sẽ có mức cao khi lõi IP yêu cầu một quá trình truyền và ở mức thấp nếu quá trình truyền ñược chấp nhận (ñược bus chủ báo thông qua tín hiệu MAS_ACK). Nếu lõi IP vẫn muốn thực hiện tiếp một quá trình truyền tiếp sau quá trình vừa ñược chấp nhận thì cần duy trì IP_REQ ở mức cao cho ñến khi không muốn thực hiện thêm quá trình truyền nào nữa.
- MAS_ACK (lối ra): Tín hiệu có ñộ rộng 1 bit, ñược bus chủ sử dụng ñể
thông báo cho lõi IP biết yêu cầu truyền ñã ñược chấp nhận. Tín hiệu này có giá trị ở mức cao khi quá trình truyền bắt ñầu pha ñịa chỉ ñầu tiên và giữ nguyên trong suốt quá trình truyền. Giá 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ùng của quá trình truyền ñó.
- REQ_DATA[3:0] (lối vào): Tín hiệu có ñộ rộng 4 bit, ñược lõi IP sử dụng
ñể thông báo về quá trình truyền cần thực hiện. Trong ñó REQ_DATA[3]
ñược sử dụng ñể yêu cầu các quá trình truyền bị khóa còn REQ_DATA[2:0] dùng ñể thông báo về một quá trình truyền là truyền
ñơn hay truyền khối.
- Ready_R, Valid_W (lối vào): Các tín hiệu có ñộ rộng 1 bit, ñược lõi IP sử
dụng ñể thông báo ñã sẵn sàng ñể ñọc hoặc ghi dữ liệu. Trong quá trình truyền khối, khi một trong hai tín hiệu này ở mức thấp (tương ứng với quá trình là ñọc hay ghi dữ liệu) thì nghĩa là khối truyền tiếp theo chưa sẵn sàng và bus chủ phải phát ñi một trạng thái truyền BUSY.
- HWRITEip (lối vào): Tín hiệu có ñộ rộng 1 bit, ñược lõi IP sử dụng ñể
yêu cầu một quá trình truyề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_IP (lối ra): Tín hiệu có ñộ rộng 1 bit, ñược bus chủ sử dụng ñể
thông báo ñã sẵn sàng dữ liệu cho quá trình ñọc hoặc ghi. Với quá trình ghi, tín hiệu này khi ở mức cao sẽ thông báo quá trình ghi ñã hoàn tất và
ñịa chỉ của khối tiếp theo có thể ñược ñưa lên. Với quá trình ñọc, khi ở
mức cao, tín hiệu này thông báo dữ liệu ñọc ñã ñược ñưa lên bus ñể lõi IP có thểñọc về.
- ERROR (lối ra): Tín hiệu có ñộ rộng 1 bit. Khi có mức cao, tín hiệu thông báo cho lõi IP biết quá trình truyền ñã bị hoãn do lỗi phát sinh ở bus slave (tương ứng với phản hồi truyền ERROR).
- HADDRip[31:0] (lối vào): Tín hiệu có ñộ rộng 32 bit, ñược lõi IP sử dụng
ñể truyền ñi tín hiệu ñịa chỉ của khối truyền cần thực hiện.
- HWDATAip[31:0] (lối vào): Tín hiệu có ñộ rộng 32 bit, ñược lõi IP sử
dụng ñể truyền ñi tín hiệu dữ liệu cần ghi.
- HRDATAip[31:0] (lối ra): Tín hiệu có ñộ rộng 32 bit, ñược lõi IP sử dụng
ñể truyền ñi tín hiệu dữ liệu cần ñọc.
b) Nhóm tín hiệu kết nối trong:
- HCLK (lối vào): Tín hiệu xung ñồng bộ cho mọi thành phần bên trong hệ
thống bus.
- HRESETn (lối vào): Tín hiệu có ñộ rộng 1 bit, ñược sử dụng ñể ñưa hệ
thống về trạng thái khởi ñầu. ðây là tín hiệu duy nhất có mức tích cực thấp.
- HREADY (lối vào): Tín hiệu có ñộ rộng 1 bit, ñược bus tớ sử dụng ñể
thông báo về trạng thái của quá trình truyền hiện tại. Khi một quá trình truyền cần mở rộng pha dữ liệu thì bus tớ sẽ chuyển HREADY về mức thấp. Khi pha dữ liệu của khối truyền ñó ñược hoàn tất thì HREADY sẽ ñược chuyển lại về mức cao ñể quá trình truyền tiếp theo ñược tiếp tục. - HBUSREQx (lối ra): Tín hiệu có ñộ rộng 1 bit, ñược bus chủ sử dụng ñể
yêu cầu bộ phân xử cấp quyền truy cập bus. Tín hiệu này sẽ có mức cao tại sườn lên của xung HCLK nếu IP_REQ ở mức cao. Giá trị của tín hiệu này sẽ chuyển lại về mức thấp khi bắt ñầu pha ñịa chỉ của quá trình truyền nếu IP_REQ cũng ở mức thấp. Ngược lại, tín hiệu vẫn sẽ ñược duy trì ở
mức cao ñể yêu cầu một quá trình truyền khối tiếp theo quá trình vừa thực hiện.
- HGRANTx (lối vào): Tín hiệu của bộ phân xử chấp nhận cho bus chủ truy cập bus. Tín hiệu này có ñộ rộng 1 bit. Pha ñịa chỉ ñầu tiên của quá trình truyền sẽ ñược bắt ñầu ở sườn lên của xung HCLK tiếp theo nếu tín hiệu HGRANTx và HREADY ñều cũng ở mức cao.
- HRESP[1:0] (lối vào): Tín hiệu có ñộ rộng 2 bit. ðây là tín hiệu phản hồi truyền của bus tớ, thông báo về trạng thái truyền hiện tại của bus tớ. - HLOCKx (lối ra): Tín hiệu này có ñộ rộng 1 bit, ñược sử dụng ñể thông
báo cho bộ phân xử biết bus chủ ñang yêu cầu các quá trình truyền bị
khóa. Tín hiệu này có mức tích cực cao và nhận giá trị từ REQ_DATA[3]. - HTRANS[1:0] (lối ra): Tín hiệu có ñộ rộng 2 bit và ñược bus chủ dùng ñể
thông báo về các kiểu truyền ñang ñược tiến hành ở trên bus.
- HWRITE (lối ra): Tín hiệu có ñộ rộng 1 bit, thông báo cho bus tớ biết quá trình truyền là một quá trình ñọc (nếu HWRITE ở mức thấp) hay là một quá trình ghi (nếu HWRITE ở mức cao). Giá trị của HWRITE ñược xác
ñịnh từ HWRITEip và từ quá trình truyền khối ñang ñược thực hiện và
ñược lấy mẫu tại pha ñịa chỉ của quá trình truyền.
- HBURST[2:0] (lối ra): Tín hiệu có ñộ rộng là 3 bit. Tín hiệu này ñược bus chủ sử dụng ñể thông báo về loại truyền khối ñược thực hiện.
- HADDR[31:0] (lối ra): Tín hiệu có ñộ rộng 32 bit, ñược bus chủ sử dụng
ñể truyền tín hiệu ñịa chỉ lên bus.
- HWDATA[31:0] (lối ra): Tín hiệu có ñộ rộng 32 bit, ñược bus chủ sử
- HRDATA[31:0] (lối vào): Tín hiệu có ñộ rộng 32 bit, ñược bus chủ sử
dụng ñểñọc tín hiệu của dữ liệu ñọc từ bus tớ truyền ñến.
3.2.2. Máy trng thái mô t hot ñng ca bus ch
ðể dễ dàng mô tả cấu trúc của bus chủ ở mức truyền thanh ghi và có thể ñiều khiển hoạt ñộng của hệ thống trong từng chu kỳ xung nhịp thì hoạt ñộng của bus chủñược mô tả dưới hình thức của một máy trạng thái bao gồm 14 trạng thái sau: IDLE, ADDR, ADDRW, WAITTING, BUSY, ADDRR, LAST, RETRY, ERROR, SPLIT, BACK_RETRY, BACK_SPLIT, CONST_RETRY, CONST_SPLIT. Việc chuyển các trạng thái sẽñược xác ñịnh bởi các tín hiệu lối vào trên bus chủ và bởi chính trạng thái hiện tại của máy trạng thái. Mối liên hệ
giữa các trạng thái ñược minh họa bởi lưu ñồ như trong Hình 24.