Chương 1 Tổng Quan nhằm thực thi, minh họa một cách trực quan các trường hợp giao tiếp của thiết kế trên giao diện máy tính. Nghiên cứu công cụ biên dịch và đánh giá thiết kế Design Compiler nhằm phân tích các bản báo cáo tổng hợp về mặt diện tích, công suất và tần số theo công nghệ tích hợp chuẩn của hãng Synopsys.6 Bố cục trình bày Chương 2 mô tả về nền tảng cơ sở hạ tầng truyền thông trên SoC, một số khái niệm cơ bản và các vấn đề giao tiếp mạng gồm: topo mạng, kỹ thuật chuyển mạch, kỹ thuật định tuyến, kỹ thuật điều khiển luồng. Phần này cũng mô tả các thành phần tồn tại trong một thiết kế ứng dụng NoC cũng như chức năng chung của chúng. Ngoài ra, công cụ phát triển cho thiết kế FPGA và công cụ đánh giá thiết kế Design Compiler cũng được trình bày trong chương này.
Chương 3 mô tả phương pháp thiết kế được lựa chọn đối với thiết kế các thành phần trong NoC như: kích thước gói tin, kích thước bộ đệm dữ liệu, tín hiệu điều khiển luồng, thành phần phân xử trong trường hợp xảy ra tranh chấp, thành phần định tuyến. Mô hình thiết kế chi tiết đối với thành phần giao tiếp mạng, tài nguyên mạng như dummy processor, dummy memory, i/o cũng được trình bày trong chương này. Chương 4 trình bày về việc đánh giá thiết kế về chi phí sử dụng tài nguyên FPGA của các khối thành phần dựa trên công cụ thiết kế Quartus của hãng Altera. Phương pháp mô phỏng tình trạng hoạt động của mạng với sự hỗ trợ của công cụ Matlab dựa trên việc giao tiếp nhận dữ liệu từ mô hình trên FPGA.
Ngoài ra, trong phần này việc đánh giá kết quả tổng hợp về diện tích, công suất và tần số của thiết kế cũng được trình bày. Chương 5 đưa ra những nhận xét về kết quả và những hạn chế trong thiết kế mô hình ứng dụng NoC. Những phương án thiết kế nhằm cải tiến hiệu năng cho mô hình ứng dụng NoC cũng được đề xuất trong phần này. 9 Luan van Chương 2 Cơ Sở Lý Thuyết CHƯƠNG 2 CƠ SỞ LÝ THUYẾT Chương này trình bày về các khái niệm trong thiết kế NoC, nền tảng cơ sở hạ tầng truyền thông trên SoC cũng như một số khái niệm cơ bản và các vấn đề giao tiếp mạng gồm: topo mạng, kỹ thuật chuyển mạch, kỹ thuật định tuyến, kỹ thuật điều khiển luồng.
Chương này đặc tả chi tiết về cấu trúc và chức năng các khối thành phần trong một thiết kế ứng dụng NoC. Ngoài ra, các công cụ phát triển dành cho thiết kế số dựa trên nền tảng phần cứng FPGA và công cụ đánh giá tổng hợp thiết kế cũng được trình bày trong chương này.1 Mạng trên chip Mạng kết nối đa dụng trên chip, NoC, là thiết kế phù hợp với sự phát triển gia tăng của các thiết kế hệ thống đa lõi xử lý (MPSoC) hiện đại. NoC được thiết kế theo phương pháp tập trung vào hướng truyền thông trong đó nền tảng kết nối đa dụng sẽ được phát triển trước, sau đó các khối chức năng xác định như bộ xử lý, bộ nhớ, bộ điều khiển thiết bị ngoại vi sẽ được gắn kết vào NoC thông qua các giao diện giao tiếp RNI[1]. Nghiên cứu trong lĩnh vực NoC yêu cầu sự hiểu biết về nhiều lĩnh vực khoa học khác nhau từ cấp độ liên kết vật lý đến cấp độ phần ứng dụng.
Do đó, các nghiên cứu NoC cần được giải quyết ở các cấp độ khác nhau và có thể được phân loại thành các lớp vật lý, lớp mạng, lớp ứng dụng dựa trên các cấp độ trừu tượng khác nhau. Mỗi phân vùng tồn tại các vấn đề và giải pháp tương ứng. Có thể chia các hướng nghiên cứu về lĩnh vực NoC như sau[18]: Khía cạnh cấp độ hệ thống (system level) Phương pháp thiết kế: mô hình hoá và khảo sát mô hình Đặc tính về mặt lưu lượng: độ trễ lan truyền, luồng dữ liệu và những yếu tố ảnh hưởng. Khía cạnh về thiết kế giao diện giao tiếp mạng (network adapter hay RNI) Chức năng: phương pháp đóng gói, quản lý dịch vụ 10 Luan van Chương 2 Cơ Sở Lý Thuyết Giao diện kết nối: dạng kết nối và hoạt động (plug and play) và khả năng linh hoạt kết nối với lõi chức năng IP khác nhau Khía cạnh về đặc điểm cấu trúc mạng Topo mạng: các topo phổ biến và biến thể kết hợp Giao thức: định tuyến, chuyển mạch và sơ đồ điều khiển Điều khiển luồng: giải quyết tình trạng deadclock, cơ chế kênh ảo, bộ đệm… Khía cạnh cấp độ kết nối Đồng bộ dữ liệu, mã hoã dữ liệu, độ tin cậy của hệ thống 2.2 Sự phát triển của nền tảng SoC 2.1 Mô hình kết nối trực tiếp Trong trường hợp này, các thành phần chức năng được kết nối một cách trực tiếp với nhau thông các các đường dây dẫn riêng biệt.
Mặt hạn chế của phương pháp kết nối trực tiếp đó là khi số lượng thành phần trong SoC tăng lên thì số lượng dây yêu cầu, số lượng chân kết nối cũng như diện tích sử dụng cho dây dẫn tăng[7]. Hệ thống được phát triển dựa trên nền tảng dây dẫn kết nối trực tiếp sẽ thiếu tính mở rộng. Điều này làm cho hệ thống không đáp ứng được tính tái sử dụng. Ngoài ra việc ảnh hưởng về mặt điện từ của nhiễu đến dây cũng cao.
Điều này có thể ảnh hưởng đến chất lượng tín hiệu của truyền thông trên chip.1: Truyền thông trên SoC dựa trên mô hình kết nối trực tiếp [7] 2.2 Mô hình bus Hiện nay, hầu hết việc truyền thông tin giữa các thành phần trên các SoC đều sử dụng mô hình bus [1, 2, 5, 7, 12]. Một mô hình bus sẽ chia sẻ môi trường truyền 11 Luan van Chương 2 Cơ Sở Lý Thuyết dẫn giữa tất cả các khối chức năng. Mỗi thành phần trong hệ thống được kết nối với bus thông qua một giao diện được thiết kế một cách chuẩn hoá. Bộ phân xử là thành phần điều khiển chính của mô hình bus.
Khi một thành phần trên mạng muốn gửi dữ liệu đến một thành phần khác thông qua bus thì bộ phân xử sẽ thêm một số tín hiệu điều khiển và gửi nó đến thành phần yêu cầu. Số lượng chân kết nối đối với các thành phần và dây dẫn được giảm bớt trong mô hình bus. Đối với hệ thống nhỏ thì mô hình bus thể hiện được hiệu quả song với các hệ thống lớn thì khả năng mở rộng và hiệu năng của hệ thống bị ảnh hưởng. Điều này bởi vì nhiều thành phần được kết nối cùng chung bus và chia sẻ cùng băng thông giao tiếp.2: Truyền thông trên SoC dựa trên mô hình bus[7] 2.3 Mô hình mạng trên chip NoC là một phương pháp thiết kế thay thế phương pháp kết nối giữa các khối thành phần nhằm giải quyết các vấn đề trong việc truyền thông trên SoC.
Trong thiết kế NoC, một phương pháp thiết kế theo mô hình mạng được sử dụng. Trong đó, các thành phần trên hệ thống được kết nối đến mỗi thành phần khác thông qua một mạng gồm nhiều bộ chuyển mạch. Mô hình mạng trên chip mang lại hiệu năng, tính mở rộng và khả năng tái sử dụng cao khi so sánh với mô hình bus và mô hình kết nối trực tiếp bằng dây dẫn. 12 Luan van Chương 2 Cơ Sở Lý Thuyết Mô hình NoC phát huy các mặt lợi điểm khi phát triển các hệ thống có số lượng thành phần xử lý lớn, khoảng trên 20 lõi.
Xét về các khía cạnh công suất tiêu thụ và tần số hoạt động so với mô hình bus thông dụng được áp dụng như AMBA thì mô hình NoC không đạt được tiêu chí đạt ra. Song xét về sự trì hoãn trên mạng NoC thì đã giảm trung bình khoảng 15.8%[12] so với thời gian trì hoãn trong việc phân xử trong mô hình bus.3: Truyền thông trên SoC dựa trên mô hình mạng trên chip [7] 2.3 Các vấn đề giao tiếp mạng 2.1 Mô hình truyền thông phân lớp Việc truyền thông trên chip trong mô hình NoC có thể được thể hiện tại 3 lớp mức thấp trong mô hình OSI bao gồm: lớp vật lý, lớp liên kết và lớp mạng. Trong một số nghiên cứu khác cũng đề cập đến một số vấn đề về các lớp mức cao như lớp giao vận, lớp ứng dụng song trong phạm vi của đề tài không trình bày đến các vấn đề này. Chức năng của 3 lớp[1, 2] được mô tả như sau: Lớp vật lý sẽ định nghĩa các đặc tính về điện.
Ngoài ra, trong lớp này qui định về tín hiệu điều khiển, tín hiệu xung nhịp đối với mỗi kết nối, sơ đồ chân kết nối, kích thước và số lượng dây dẫn 13 Luan van Chương 2 Cơ Sở Lý Thuyết Lớp liên kết dữ liệu tương ứng với việc truyền thông tin cậy của dữ liệu thông qua liên kết vật lý. Tại lớp này, thiết kế phải được đảm bảo để phù hợp với số lượng bit, kỹ thuật phát hiện lỗi và sửa lỗi. Lớp mạng quyết định việc định tuyến đối với các gói tin từ nguồn đến đích thông qua các bộ chuyển mạch trên mạng. Chức năng của lớp này bao gồm việc quyết định định tuyến và thiết kế bộ đệm dữ liệu trên mạng.
Ngoài ra, lớp này cũng thực hiện đảm bảo một số vấn đề về chất lượng dịch vụ như thời gian trì hoãn và độ ưu tiên của dữ liệu.2 Topo mạng Topo mạng quyết định thiết kế vật lý và qui định về sơ đồ kết nối giữa các router, các kênh truyền dẫn trên toàn mạng. Topo mạng ảnh hưởng đến hiệu năng trên toàn mạng. Ngoài ra topo còn quyết định số lượng router mà một khung dữ liệu sẽ đi qua cũng như chiều dài liên kết giữa các router. Do đó, topo ảnh hưởng đến độ trễ lan truyền (latency) và công suất năng lượng tiêu thụ của mạng.
Chi phí thực hiện của một topo phụ thuộc vào 2 yếu tố: số lượng của các kết nối tại mỗi router và kiến trúc của topo gồm chiều dài của dây dẫn, số lượng lớp. Một số topo mạng thông dụng được áp dụng cho NoC như topo vòng, torus, lưới 2 chiều [19].4: Topo dạng vòng, lưới 2 chiều và dạng torus Topo dạng lưới (mesh topo) được xem là lựa chọn tốt cho thiết kế NoC thông qua nhiều nghiên cứu[3, 6, 20]. Dạng lưới 2 chiều có hình dáng là một lưới với chiều rộng và chiều ngang có kích thước xác định. Topo này được sử dụng phổ biến nhất vì sự đơn giản trong chế tạo, khả năng mở rộng, tính đối xướng và độ trễ giữa các router có thể dự đoán trước.
14 Luan van Chương 2 Cơ Sở Lý Thuyết Hình 2.