4.3. đánh giá hệ thống sau khi thực thi phần cứng
Sau khi kiểm tra hoạt ựộng của hệ thống về mặt logic và chứng tỏựược hệ
thống ựã hoạt ựộng ựúng theo ựặc tả ựề ra, ta tiến hành tổng hợp logic (logic synthesis). Việc tổng hợp logic thiết kế ựược tiến hành bằng phần mềm ISE 10.1 Foundation Suite. Nếu quá trình tổng hợp không có lỗi xảy ra, ta có thể tiếp tục thực hiện các bước tiếp theo như gắn kết thư viện phần cứng (mapping), ựặt chỗ
và ựịnh tuyến (place and round). Tuy nhiên, ựể ựảm bảo tắnh ựúng ựắn của thiết kế, sau mỗi bước như vậy ta lại tiếp tục thực hiện quá trình mô phỏng và kiểm chứng nhưựã trình bày trong mục 4.1. Những kết quả thu ựược sau các quá trình này sẽ cho phép ước lượng ựược tài nguyên phần cứng cần phải sử dụng ựể xây dựng hệ thống bus vừa ựược thiết kế. Toàn bộ quá trình thực thi phần cứng ựược thực hiện trên chip FPGA dòng Virtex-4 XC4VLX40-12FF1148 của hãng Xilinx
ựể có thểựáp ứng ựủ số lượng bộựệm chân vào ra (IOB) của thiết kế.
Sau quá trình tổng hợp, ta có thể xác ựịnh ựược số lượng các bộ xử lý logic ựược hệ thống sử dụng. Số lượng các bộ xử lý này ựược tổng hợp như ở
trong Bảng 4. Ta thấy rằng số lượng các bộ xử lý logic này cũng biểu diễn phần nào cấu trúc của hệ thống bus ựược xây dựng. Chẳng hạn, ta có thể thấy số lượng bộ cộng/trừ 32 bit ựược sử dụng khá nhiều ựể phục vụ cho việc tắnh toán các ựịa chỉ cần truyền của bus chủ. Trong số các loại thanh ghi thì thanh ghi 1 bit và 32 bit ựược sử dụng khá nhiều ựể chốt tắn hiệu hoặc ựể nhớ tạm dữ liệu ựọc và dữ
liệu ghi. Hệ thống chỉ sử dụng một bộ phân kênh 4-1 (32 bit) ựể phân kênh các tắn hiệu phản hồi và bus dữ liệu ựọc từ bus tớ về bus chủ.
Bảng 4. Số lượng bộ xử lý logic ựược sử dụng trong hệ thống bus Bộ xử lý logic Số lượng Bộ cộng/Bộ trừ 19 Bộ cộng 32 bit 8 Bộ trừ 32 bit 8 Bộ cộng 5 bit 2 Bộ trừ 5 bit 1 Thanh ghi 57
Thanh ghi 1 bit 23
Thanh ghi 2 bit 6
Thanh ghi 3 bit 5
Thanh ghi 4 bit 2
Thanh ghi 5 bit 3
Thanh ghi 16 bit 8
Thanh ghi 32 bit 10
Bộ chốt 3 Bộ chốt 1 bit 1 Bộ chốt 2 bit 1 Bộ chốt 32 bit 1 Bộ so sánh 7 Bộ so sánh lớn hơn (32 bit) 3 Bộ so sánh nhỏ hơn (32 bit) 4
Bộ phân kênh 4-1 (32 bit) 1
Một thông số quan trọng nữa có thể thu ựược sau quá trình tổng hợp ựó là tần số hoạt ựộng cực ựại của hệ thống. Thông số này thu ựược thông qua việc
ựánh giá thời gian tối thiểu cần thiết ựể tắn hiệu ựến các thanh ghi có thể lấy mẫu
ổn ựịnh. Lưu ý rằng ựây chưa phải là tần số hoạt ựộng thực của hệ thống, tuy nhiên thông số này vẫn cho ta ước lượng gần ựúng tần số hoạt ựộng tối ựa của hệ
thống. Kết quả tổng hợp cho ta thời gian truyền dẫn tắn hiệu tối thiểu trên ựường truyền tới hạn (critical path) là 4,885ns tương ứng với tần số hoạt ựộng tối ựa của hệ thống là 204,698Mhz. Với tần số hoạt ựộng tối ựa này, tốc ựộ truyền của hệ
thống bus có thể lên ựến 6,5Gb/s.
Về không gian thực thi phần cứng, sau khi thực hiện quá trình gắn kết với thư viện phần cứng của FPGA ta thu ựược số lượng tài nguyên phần cứng ựã sử
dụng nhưở Bảng 5.
Bảng 5. Số lượng tài nguyên phần cứng ựã sử dụng
Loại tài nguyên Số lượng sử dụng Số lượng sẵn có Tỷ lệ sử dụng Tổng số slice sử dụng như thanh ghi (Slice Register)
470 36864 1%
Số lượng Flip Flop 435 Số bộ chốt dữ liệu (Latch) 35 Tổng số LUT 4 lối vào 2709 36864 7% Số LUT ựược sử dụng như các bộ logic 2437 Số LUT ựược sử dụng như các bộ ựịnh tuyến 272
Số bộựệm chân vào ra (IOB) 624 640 97% Số bộựệm xung nhịp (BUFG) 2 32 6%
Kết quả cho thấy hệ thống bus ựược thiết kế sử dụng hết 470 slice ựể dùng làm các thanh ghi (chiếm 1% lượng tài nguyên phần cứng ựược cung cấp). Trong
ựó phần lớn số slice ựược sử dụng như là các flip flop (435/470 slice thanh ghi, chiếm 92,6%) còn lại là các bộ chốt dữ liệu. Số lượng bảng tìm kiếm 4 lối vào (Look Up Table Ờ LUT) ựược sử dụng là 2709 (chỉ sử dụng hết 7% tài nguyên của chip XC4VLX40-12FF1148) và phần lớn ựược sử dụng ựể thực hiện các phép toán logic. đáng chú ý nhất là số lượng bộựệm chân vào ra ựược sử dụng là 624 ựơn vị, chiếm 97% lượng tài nguyên có trên chip. Lý giải cho ựiều này là do hệ thống bus sử dụng khá nhiều cổng vào ra 32 bit ựể phục vụ cho mục ựắch cung cấp ựịa chỉ và dữ liệu cho các lõi IP ựược gắn bên ngoài. Khi xây dựng cả hệ
thống trên chip thì các lối vào, ra này sẽ chuyển thành các tắn hiệu kết nối giữa các lõi xử lý, lõi IP và hệ thống bus.
Hình 41 cho ta một cái nhìn tổng quan về tình hình sử dụng tài nguyên ựể
xây dựng các thành phần khác nhau trong hệ thống. Ta thấy các khối bus chủ
luôn sử dụng lượng tài nguyên lớn nhất trong tất cả các khối chức năng vì bus chủựảm nhận chức năng tắnh toán và ựiều khiển chắnh. Tỷ lệ sử dụng tài nguyên của cả hai khối bus chủ so với các khối còn lại là: 72% LUT, 82% slice thanh ghi và 62% tổng số slice của hệ thống. Khối phân kênh tắn hiệu từ bus chủựến bus tớ
(ms_mux), khối giải mã tắn hiệu ựịa chỉ (decoder) và khối kết nối hệ thống (ahb_system) không sử dụng thanh ghi vì ựây chỉ là các mạch tổ hợp (combinational circuit) thực hiện chức năng chuyển kênh và ựịnh tuyến. Ta cũng nhận thấy bus tớ slave_1 sử dụng nhiều tài nguyên phần cứng hơn các bus tớ
khác. Sự khác biệt này có thể lý giải là do bus tớ slave_1 ựược xây dựng ựể có khả năng hỗ trợ thêm chức năng truyền SPLIT nên cần sử dụng thêm tài nguyên phần cứng.