Đăng ký Đăng nhập
Trang chủ Thiết kế và mô phỏng mạng trên chip n chiều...

Tài liệu Thiết kế và mô phỏng mạng trên chip n chiều

.PDF
69
1
70

Mô tả:

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI --------------------------------------- PHẠM TRÍ CÔNG THIẾT KẾ VÀ MÔ PHỎNG MẠNG TRÊN CHIP N CHIỀU Chuyên ngành: CÔNG NGHỆ THÔNG TIN LUẬN VĂN THẠC SĨ KHOA HỌC CÔNG NGHỆ THÔNG TIN NGƯỜI HƯỚNG DẪN KHOA HỌC: TS. NGUYỄN KIM KHÁNH Hà Nội - Năm 2012 THIẾT KẾ VÀ MÔ PHỎNG MẠNG TRÊN CHIP N CHIỀU MỤC LỤC Danh mục các ký hiệu, chữ viết tắt ........................................................................................ 3 Danh mục các bảng ................................................................................................................ 4 Danh mục hình vẽ .................................................................................................................. 5 LỜI NÓI ĐẦU ....................................................................................................................... 6 CHƯƠNG 1: PHẦN MỞ ĐẦU ............................................................................................. 7 1.1. Lý do chọn đề tài ..................................................................................................... 7 1.2. Mục đích và phạm vi nghiên cứu ............................................................................ 8 CHƯƠNG 2: TỔNG QUAN VỀ MẠNG TRÊN CHIP – NOC .......................................... 10 2.1. Hoàn cảnh ra đời ................................................................................................... 10 2.2. Mạng trên chip ...................................................................................................... 11 2.2.1 System-On-Chip ............................................................................................ 11 2.2.2 Network-On-Chip .......................................................................................... 12 2.3. Kiến trúc của hệ thống NOC ................................................................................. 13 2.3.1 Kết nối giữa các thành phần trong NoC ....................................................... 13 2.3.2 Topology trong NoC ...................................................................................... 14 2.3.3 Các đặc điểm NoC ......................................................................................... 15 2.3.4 Kiến trúc mạng trong Avalon ........................................................................ 16 2.4. Kết chương ........................................................................................................... 16 CHƯƠNG 3: THIẾT KẾ NOC ............................................................................................ 17 3.1. Hỗ trợ thiết kế NOC trong Qsys............................................................................ 17 3.2. Giao tiếp ánh xạ bộ nhớ ........................................................................................ 18 4.2.1. Định dạng gói tin trong giao tiếp ánh xạ bộ nhớ ........................................... 20 4.2.2. Miền kết nối - Interconnect Domains ............................................................ 23 4.2.3. Qsys Transformations .................................................................................... 26 4.2.4. Giao tiếp mạng của master............................................................................. 27 4.2.5. Giao tiếp mạng của slave ............................................................................... 29 4.2.6. Trọng tài - Arbitration.................................................................................... 32 4.2.7. Bộ chuyển kích thước - Width Adaptation .................................................... 36 4.2.8. Burst Transfers............................................................................................... 37 3.3. Phương pháp thiết kế............................................................................................. 39 3.4. Các thành phần cơ bản được sử dụng trong thiết kế ............................................. 40 4.4.1. Processor Nios II............................................................................................ 40 4.4.2. On-Chip Ram ................................................................................................. 41 4.4.3. JTAG UART .................................................................................................. 41 3.5. Kiến trúc của hệ thống .......................................................................................... 42 3.6. Chi tiết thiết kế ...................................................................................................... 43 4.6.1. Các thông số thiết định của các Nios II ......................................................... 43 4.6.2. Các kết nối với clock của các Philosopher .................................................... 44 4.6.3. Các kết nối với tín hiệu reset của các Philosopher ........................................ 44 4.6.4. Các kết nối với tín hiệu reset của các thành phần ngoại vi ............................ 45 4.6.5. Các kết nối của các Philosopher Master tới các thiết bị ................................ 46 4.6.6. Các kết nối của các Philosopher Master tới các Slave................................... 47 4.6.7. Các kết nối của cpu_top Master tới các Philosopher slave............................ 48 4.6.8. Các địa chỉ cơ sở của các hệ thống con philosopher ..................................... 48 Trang 1/68 THIẾT KẾ VÀ MÔ PHỎNG MẠNG TRÊN CHIP N CHIỀU 3.7. Kết chương ............................................................................................................ 48 CHƯƠNG 4: CÀI ĐẶT THỬ NGHIỆM NOC ................................................................... 49 4.1. Xây dựng hệ thống con Philosopher ..................................................................... 49 5.1.1. Chi tiết hệ thống con philosopher .................................................................. 49 5.1.2. Chi tiết thiết định Nios II của hệ thống con ................................................... 50 5.1.3. Thiết định địa chỉ giữa master và slave trong hệ thống con .......................... 51 5.1.4. Các component trong hệ thống con ............................................................... 51 4.2. Xây dựng hệ thống sáu nhân ................................................................................. 52 5.2.1. Chi tiết hệ thống............................................................................................. 52 5.2.2. Chi tiết thiết định bộ xử lý Nios của cpu_top ................................................ 53 5.2.3. Thiết định onchip memory............................................................................. 54 5.2.4. Thiết định địa chỉ giữa master và slave trong hệ thống ................................. 55 5.2.5. Các component trong thệ thống ..................................................................... 55 4.3. Kiểm tra đánh giá hệ thống sáu nhân .................................................................... 56 5.3.1. Kết quả dịch trong Qsys................................................................................. 56 5.3.2. Kết quả dịch hệ thống trong quartus II .......................................................... 56 5.3.3. Một số thống kê về hệ thống sáu nhân đã thực hiện ...................................... 57 5.3.4. Kiểm tra số nhân của hệ thống sáu nhân đã thực hiện ................................... 58 4.4. Xây dựng hệ thống rút gọn còn hai nhân và bộ nhớ RAM 4k ............................. 59 5.4.1. Chi tiết hệ thống hai nhân .............................................................................. 59 5.4.2. Chi tiết thiết định bộ xử lý Nios của cpu_top với RAM 4k ........................... 60 5.4.3. Thiết định onchip memory 4k........................................................................ 61 4.5. Kiểm tra đánh giá hệ thống hai nhân với RAM 4k ............................................... 62 5.5.1. Kết quả dịch trong Qsys................................................................................. 62 5.5.2. Kết quả dịch hệ thống hai nhân trong quartus II............................................ 62 5.5.3. Một số thống kê về hệ thống hai nhân ........................................................... 63 5.5.4. Kiểm tra lại số nhân của hệ thống hai nhân ................................................... 64 4.6. Kết chương ............................................................................................................ 65 CHƯƠNG 5: KẾT QUẢ VÀ HƯỚNG PHÁT TRIỂN ....................................................... 66 5.1. Kết quả đạt được ................................................................................................... 66 5.2. Hướng phát triển ................................................................................................... 66 TÀI LIỆU THAM KHẢO ................................................................................................... 68 Trang 2/68 THIẾT KẾ VÀ MÔ PHỎNG MẠNG TRÊN CHIP N CHIỀU Danh mục các ký hiệu, chữ viết tắt Từ viết tắt Viết đầy đủ Ý nghĩa NOC Network On Chip Mạng trên chip Thiết kế truyền thống không Non-NOC Non Network On Chip có mạng trên chip DMA Direct Memory Access Truy cập bộ nhớ trực tiếp Advanced eXtensible AXI Interface Giao tiếp nâng cao của Avalon Avalon-MM Avalon Memory Mapped Ánh xạ bộ nhớ của Avalon Altera’s System Integration Công tụ tích hợp hệ thống của Qsys Tool Altera SoC System On a Chip Cả hệ thống trên một chip System on a Programmable Cả hệ thống trên một chip lập SOPC trình được Chip Field-Programmable Gate FPGA Array Chip logic lập trình được Avalon-ST Avalon Streaming Thành phần luồng Avalon Qsys interconnect Qsys interconnect Kết nối trong Qsys Mutual Exclusion Mutex Thành phần loại trừ lẫn nhau Component Trang 3/68 THIẾT KẾ VÀ MÔ PHỎNG MẠNG TRÊN CHIP N CHIỀU Bảng Bảng Bảng Bảng Bảng Bảng Bảng Bảng Bảng Bảng Danh mục các bảng 1 Định dạng gói tin trong giao tiếp ánh xạ bộ nhớ .................................................... 22 2 Danh sách các kiểu giao dịch ................................................................................. 23 3 Các thông số thiết định của các Nios II trong hệ thống ......................................... 43 4 Các kết nối với clock của các Philosopher trong hệ thống..................................... 44 5 Các kết nối với tín hiệu reset của các Philosopher trong hệ thống......................... 44 6 Các kết nối với tín hiệu reset của các thành phần ngoại vi .................................... 45 7 Các kết nối của các Philosopher Master tới các thiết bị trong hệ thống ................ 46 8 Các kết nối của các Philosopher Master tới các Slave trong hệ thống ................... 47 9 Các kết nối của cpu_top Master tới các Philosopher slave trong hệ thống ............ 48 10 Các địa chỉ cơ sở của các hệ thống con Philosopher ............................................ 48 Trang 4/68 THIẾT KẾ VÀ MÔ PHỎNG MẠNG TRÊN CHIP N CHIỀU Danh mục hình vẽ Hình 1 System on Chip (SoC) với bus truyền thống ........................................................... 13 Hình 2 Network on Chip cơ bản .......................................................................................... 13 Hình 3 Topology chính quy ................................................................................................. 14 Hình 4 Topology không chính quy ...................................................................................... 14 Hình 5 Mô hình cơ bản của hệ thống NoC .......................................................................... 16 Hình 6 Kiến trúc NoC của một hệ thống Avalon-MM với nhiều master ............................ 20 Hình 7 Sử dụng hai miền kết nối ......................................................................................... 24 Hình 8 Sử dụng một miền kết nối kết hợp với bộ chuyển kích thước ................................. 25 Hình 9 Các thành phần trong giao tiếp ánh xạ bộ nhớ giữa master và slave ....................... 26 Hình 10 Các thành phần trong Master Network Interfaces của Avalon-MM ..................... 27 Hình 11 Các thành phần trong Master Network Interfaces của AXI................................... 28 Hình 12 Giao tiếp mạng trong Avalon-MM Slave .............................................................. 30 Hình 13 Giao tiếp mạng trong AXI slave ............................................................................ 30 Hình 14 Thiết định trọng tài trong Qsys .............................................................................. 32 Hình 15 Arbitration Timing ................................................................................................. 33 Hình 16 Hai Avalon-MM master truy cập liên tục tới một slave ....................................... 33 Hình 17 Master ngừng truy cập trước khi dùng hết chia sẻ của mình ................................. 34 Hình 18 Trọng tài của 4 Avalon-MM master kết nối với 4 Avalon-MM slave................... 35 Hình 19 Cách hoạt động của bộ chuyển đổi kích thước dữ liệu 4:1 .................................... 36 Hình 20 Kiến trúc hệ thộng NOC 6 chip sử dụng chung On-Chip RAM............................ 42 Hình 21 Chi tiết các thành phần trong hệ thống con ........................................................... 49 Hình 22 Chi tiết Nios II của hệ thống con philosopher ....................................................... 50 Hình 23 Thiết định địa chỉ giữa master và slave trong hệ thống con .................................. 51 Hình 24 Các component trong hệ thống con ....................................................................... 51 Hình 25 Các thành phần trong hệ thống sáu nhân và kết nối .............................................. 52 Hình 26 Thiết định bộ xử lý Nios II của cpu_top ................................................................ 53 Hình 27 Thiết định onchip ram trong hệ thống ................................................................... 54 Hình 28 Thiết định địa chỉ giữa master và slave trong hệ thống ......................................... 55 Hình 29 Các component trong hệ thống .............................................................................. 55 Hình 30 Kết quả dịch chương trình sáu nhân trong Qsys - NoC ......................................... 56 Hình 31 Kết quả dịch hệ thống trong Quartus II ................................................................. 56 Hình 32 Thống kê hệ thống ................................................................................................. 57 Hình 33 Số nhân trong hệ thống đã tạo được là sáu ............................................................ 58 Hình 34 Các subsystem con không được sử dụng bằng cách uncheck................................ 59 Hình 35 Thiết định bộ xử lý Nios II của cpu_top trong hệ thống hai nhân ......................... 60 Hình 36 Thiết định onchip ram còn 4k trong hệ thống........................................................ 61 Hình 37 Kết quả dịch chương trình trong NoC với hai nhân .............................................. 62 Hình 38 Kết quả dịch hệ thống hai nhân trong Quartus II................................................... 62 Hình 39 Thống kê hệ thống ................................................................................................. 63 Hình 40 Kiểm tra số nhân của hệ thống hai nhân ................................................................ 64 Trang 5/68 THIẾT KẾ VÀ MÔ PHỎNG MẠNG TRÊN CHIP N CHIỀU LỜI NÓI ĐẦU Trong thời đại ngày nay, cùng với sự phát triển của khoa học và công nghệ nói chung và Công nghệ thông tin nói riêng, ngày càng phức tạp sử dụng chip với mật độ phần tử logic lớn. Các nhóm thiết kế phải phát triển các hệ thống lớn hơn và phức tạp hơn, với sự gia tăng yêu cầu về hiệu năng, trong thời gian ít hơn. Yêu cầu cấp thiết là phải đưa ra công cụ để giúp các nhà thiết kế kết nối các thành phần, các hệ thống có sẵn lại để tạo ra một hệ thống mới một cách nhanh chóng và thuận tiện, đặc biệt là khi có sự thay đổi các thành phần trong hệ thống. Kiến trúc NoC kết nối các thành phần trên chip theo mô hình mạng bao gồm một kết nối mạng linh hoạt sử dụng các tài nguyên cần thiết tối thiểu cho một ứng dụng nhất định, một định dạng gói tin, và một topology mạng, các lệnh và các trả lời giúp nâng tính đồng thời cao hơn và sử dụng tài nguyên ít hơn. Trong phạm vi luận văn của mình, dưới sự hướng dẫn của Tiến sĩ Nguyễn Kim Khánh, tôi đã chọn nghiên cứu đề tài “Thiết kế và mô phỏng mạng trên chip n chiều” Tôi xin gửi lời cảm ơn chân thành tới Tiến sĩ Nguyễn Kim Khánh, người đã tận tâm hướng dẫn, định hướng cho tôi trong suốt quá trình thực hiện luận văn. Tôi cũng xin gửi lời cảm ơn tới tất cả người thân và bạn bè đã động viên và giúp đỡ tôi hoàn thành luận văn này. Học viên cao học Lớp Công nghệ thông tin 2010B Phạm Trí Công Trang 6/68 THIẾT KẾ VÀ MÔ PHỎNG MẠNG TRÊN CHIP N CHIỀU CHƯƠNG 1: PHẦN MỞ ĐẦU 1.1. Lý do chọn đề tài Có thể khẳng định rằng thiết kế chip là một lĩnh vực khó và có số lượng ít người tham gia và làm công việc này. Nhưng thiết kế chip là một ngành có thể cho thu nhập cao và ổn định. Không những đem lại cho người làm mà còn đem lại lợi ích cho cả tập thể, cả công ty và cả một quốc gia. Nói đến chip, chúng ta thường nghĩ ngay đến các chip máy tính để bàn, cho máy tính xách tay, hay gần đây là cho các thiết bị di động và máy tính bảng. Nhưng nó chỉ là phần nổi, là số ít. Chip không chỉ có vậy, mà chip ngày nay được sử dụng trong hầu hết các lĩnh vực, nó có thể có trong thiết bị dân dụng hàng ngày máy giặt, tivi, tủ lạnh. Hay các thiết bị trong xây dựng như thang máy, hay ngôi nhà thông minh, hay là trong các hệ thống của ô tô như thiết bị tìm đường. Ngoài ra một phần lớn các chip được sử dụng trong các thiết bị giải trí, như máy ảnh, máy nghe nhạc, máy quay phim. Và đặc biệt là trong các thiết bị trong quân sự. Qua đó ta có thể hiểu được ngành công nghiệp sản xuất chip rộng lớn đã được phát triển như thế nào. Nó trị giá hàng ngàn tỷ đô la. Đó cũng là một ngành tiềm năng cho ngành IT của Việt nam hiện nay. Ngành IT của Việt nam những năm trước chủ yếu là gia công phần mềm và có một phần xuất khẩu, hoặc là nhập khẩu phần cứng. Còn về lĩnh vực hệ thống nhúng mà trong đó có thiết kế chip (không phải là các chip mạnh và phức tạp) thì còn bỏ ngỏ. Vì vậy, việc nghiên cứu làm sao để có thể vừa có tính chất nghiên cứu, vừa có tính chất thúc đẩy, tăng khả năng tiếp cận với việc thiết kế chip là một hướng đi mà tác giả quan tâm. Vì vậy tác giả chọn đề tài thiết kế và mô phỏng mạng trên chip N chiều. Với mục đích chính là có thể tiếp cận công nghệ mới nhất mà thế giới đang quan tâm là mạng trên chip, và có thể hiểu được một phần quy trình và các công cụ được sử dụng trong thiết kế chip. Không những vậy công nghệ mạng trên chip còn giúp cho việc thiết kế các hệ thống trên chip trở nên đơn giản hơn trước. Trang 7/68 THIẾT KẾ VÀ MÔ PHỎNG MẠNG TRÊN CHIP N CHIỀU 1.2. Mục đích và phạm vi nghiên cứu Mục đích nghiên cứu của đề tài là tìm hiểu phương pháp thiết kế NoC và đánh giá tính khả dụng của phương pháp. Tác giả mong muốn khi thực hiện đề tài có khả năng tiếp cận được với việc thiết kế chip và quy trình thiết kế chip. Trong phạm vi luận văn này, tôi xin được nghiên cứu đến các vấn đề sau: - Tổng quan về mạng trên chip - Thiết kế NoC - Xây dựng thử nghiệm NoC - Kết quả, đánh giá và hướng phát triển Bố cục luận văn bao gồm các phần sau đây: • Chương 1: Phần mở đầu - Lý do chọn đề tài. - Nhiệm vụ nghiên cứu. • Chương 2: Tổng quan về mạng trên chip - NoC - Trình bày tổng quan chung Noc - Hiện trạng các nghiên cứu và công cụ NoC. • Chương 3: Thiết kế NoC - Hỗ trợ thiết kế NoC trong Qsys - Các thành phần được sử dụng trong thiết kế - Mô tả hệ thống sẽ được thiết kế. - Chi tiết các kết nối sử dụng NoC • Chương 4: Cài đặt thử nghiệm NoC - Dựa vào thiết kế ở mục 3, thực hiện việc xây dựng chip như đã thiết kế bằng công cụ Qsys. - Kiểm tra và đánh giá kết quả. Trang 8/68 THIẾT KẾ VÀ MÔ PHỎNG MẠNG TRÊN CHIP N CHIỀU • Chương 5: Kết quả đánh giá và hướng phát triển - Kết quả đạt được. - Hướng phát triển. Trang 9/68 THIẾT KẾ VÀ MÔ PHỎNG MẠNG TRÊN CHIP N CHIỀU CHƯƠNG 2: TỔNG QUAN VỀ MẠNG TRÊN CHIP – NOC 2.1. Hoàn cảnh ra đời Trong những năm gần đây, các sản phẩm công nghệ ngày càng phát triển nhanh hơn và nhiều tính năng hơn, đặc biệt là các thiết bị nhỏ cầm tay. Để đáp ứng và theo kịp đà phát triển đó, thì việc thiết kế và tích hợp các chip hiện có đòi hỏi phải có một công cụ hỗ trợ để có thể kết nối các thành phần hiện có một cách thuận tiện và dễ dàng hơn. Ban đầu việc thiết kế các IC được thực hiện bằng FPGA (FieldProgrammable Gate Array), sau đó khi các ứng dụng phát triển hơn, phức tạp hơn thì chúng ta có khai niêm SOC – System On a Chip, cả hệ thống trên một chip. Sau SOC thì có SOPC (System on a Programmable Chip) là khái niệm mở rộng của SOC, SOPC nghĩa là cả hệ thống trên chip lập trình được. Như chúng ta đã biêt, các IC có ưu điểm là nhanh và ổn định, nhưng nhược điểm là không có tính khả chuyển. Còn chip lập trình được không nhanh bằng IC nhưng có tình mềm dẻo hơn do người lập trình có thể thay đổi theo yêu cẩu mới của khách hàng (lập trình được). Việc ra đời công nghệ để thực hiện SOPC đã thúc đẩy ngành công nghiệp sản xuất chip và hệ thông nhúng trong những năm qua. Nhưng với đòi hỏi ngày càng cao của xã hội về các ứng dụng, và tốc độ phát triển ngày càng nhanh của chúng, việc tích hợp các “hệ thống” có sẵn ở dạng SOC hoặc SOPC để ra một hệ thống mới phức tạp hơn với thời gian phát triển phải giảm hơn nữa thì cần có một công cụ hỗ trợ các nhà thiết kế. NOC – mạng trên chip, xuất phát của ý tưởng là mạng máy tính hiện có với những ưu việt của nó, các nhà thiết kế chip mong muốn có thể xây dựng chip với nhiều thành phần nhỏ được kết nối với nhau như là các máy tính kết nối với nhau thông qua mô hình mạng. Trang 10/68 THIẾT KẾ VÀ MÔ PHỎNG MẠNG TRÊN CHIP N CHIỀU 2.2. Mạng trên chip 2.2.1 System-On-Chip Cuộc sống của chúng ta đã được hình thành bởi sự phát triển của công nghệ điện tử hiện đại, chẳng hạn như sự phổ biến của máy tính, các hệ thống thông minh, truyền thông và internet. Ngày nay các sản phẩm vi điện tử ảnh hưởng đến cách học tập, giao tiếp và giải trí. “Động lực quan trọng cho sự phát triển trong vài thập kỷ là công nghệ System-on-Chip (SoC). Với SoC thì các ứng dụng phức tạp được tích hợp vào duy nhất một chip. Không chỉ có chức năng phong phú, các sản phẩm như điện thoại di động, máy tính xách tay và bộ thiết bị cầm tay cá nhân đang trở nên nhanh hơn, kích thước nhỏ hơn, khả năng vượt trội hơn, nhẹ hơn, tiêu thụ điện năng ít hơn và rẻ hơn. Nhiều người nghĩ rằng, xu hướng sử dụng SoC vẫn còn tiếp tục, tức là chúng ta có thể tích hợp các hệ thống ngày càng phức tạp hơn với công nghệ SoC. Tuy nhiên, chúng ta đang phải đối mặt với thực tế rằng các phương pháp thiết kế và tích hợp hiện tại không thể phát triển đều được như trước nữa” (Zhonghai Lu, p.17). Và chúng ta cần phải nghiên cứu để tìm ra một phương pháp mới phù hợp hơn trong hoàn cảnh hiện tại. Cùng với sự phát triển của kỹ thuật bán dẫn, số thành phần logic trên một đơn vị diện tích được tăng rất nhiều qua thời gian. “Thiết kế SoC dần chuyển sang thiết kế dựa trên multiprocessor. Các hệ thống nhúng đang chuyển dần từ cách tiếp cận đơn bộ vi xử lý sang cách tiếp cận đa bộ xử lý. Mọi người đều có thể nhận thấy rằng tương lai sẽ là hệ thống nhúng với nhiều bộ xử lý hay là sự tích hợp của nhiều SoC (MPSoC)”( G. Schelle and D. Grunwald, p.1). Nó cho phép thiết kế nhanh hơn, xây dựng và kiểm chứng hệ thống tiết kiệm thời gian hơn. Trang 11/68 THIẾT KẾ VÀ MÔ PHỎNG MẠNG TRÊN CHIP N CHIỀU 2.2.2 Network-On-Chip Network-on-Chip hoặc Network-on-a-Chip (NoC hoặc NOC) là một cách tiếp cận để thiết kế các hệ thống con thông tin liên lạc giữa các lõi IP trong một hệ thống-trên-một-Chip (SoC). NoC áp dụng lý thuyết mạng và phương pháp truyền thông mạng trên chip và mang lại những cải tiến so với phương pháp sử dụng bus thông thường. NoC cải thiện khả năng mở rộng của SoC, và hiệu quả sức mạnh của các SoC phức tạp so với các thiết kế khác. “Bản chất của NoC chính là Platform của SoC. NoC có các giao tiếp để thực hiện kết nối các thành phần trong hệ thống, các thành phần này có thể chính là các SoC đã được phát triển hoặc sẽ được team thiết kế phát triển”(Zhonghai Lu, p.20). Sử dụng NoC sẽ giúp cho việc thiết kế và xây dựng hệ thống đơn giản hơn, có tính độc lập hơn và uyển chuyển hơn, và đặc biệt là tính tái sử dụng rất cao. Ưu điểm của kiến trúc NoC • Tính độc lập và tối ưu hóa các lớp. • Đơn giản hóa các thay đổi cho mỗi ứng dụng. • Hỗ trợ nhiều giao tiếp mạng và các tùy chọn cho các bộ phần khác nhau của mạng. • Phát triển tính năng dễ dàng và khả năng mở rộng cao. Trang 12/68 THIẾT KẾ VÀ MÔ PHỎNG MẠNG TRÊN CHIP N CHIỀU 2.3. Kiến trúc của hệ thống NOC 2.3.1 Kết nối giữa các thành phần trong NoC NoC (Network on chip) là một hướng thiết kế chip mới trong đó các modul liên kết với nhau theo mô hình mạng thay vì mô hình bus truyền thống. Hình 1 System on Chip (SoC) với bus truyền thống Hình 2 Network on Chip cơ bản Trang 13/68 THIẾT KẾ VÀ MÔ PHỎNG MẠNG TRÊN CHIP N CHIỀU Để tái sử dụng những modul của kiến trúc bus cũ như CPU, RAM, modul ngoại vi. Mô hình NoC đưa ra sử NIC (Network Interface Card ) để truyền thông giữa modul của chip với các router còn các router kết nối với nhau theo mô hình mạng. 2.3.2 Topology trong NoC Topology trong NoC được chia thành hai loại: chính quy và không chính quy. Topology chính quy có một số đặc điểm như : kích thước của mạng được mở rộng theo một công thức tương ứng với mạng ấy và các node trong mạng này hoạt động tương tự nhau. Hình 3 Topology chính quy Topology không chính quy được tạo ra từ một số mạng chính quy, và cách thức kết nối tùy thuộc vào nhu cầu của ứng dụng. Hình 4 Topology không chính quy Trang 14/68 THIẾT KẾ VÀ MÔ PHỎNG MẠNG TRÊN CHIP N CHIỀU 2.3.3 Các đặc điểm NoC • Thuật toán định tuyến Thuật toán định tuyến cũng được chia làm hai dạng: thuật toán định tuyến thích nghi và thuật toán định tuyến tất định. Với thuật toán định tuyến thích nghi thì đường truyền sẽ được xác định trong quá trình packet truyền đi, router căn cứ vào trạng thái của mạng để xác định đường truyền tiếp theo cho gói tin. Trong khi đó thuật toán định tuyến tất định xác định đường truyền căn cứ vào đường địa chỉ nguồn và địa chỉ đích. Xét về độ phức tạp của thuật toán thì định tuyến định trước tỏ ra đơn giản hơn nhiều và khi xây dựng một mô hình mạng ở cả dạng phần cứng thì định tuyến định trước thường được lựa chọn để từng bước xây dựng một mô hình mạng hoàn chỉnh. • Cơ chế điều khiển luồng Điều khiển luồng với mục đích chuyển dữ liệu đến đích một cách chính xác nhất. Đồng thời đảm bảo chất lượng dịch vụ như tin cậy hay không tin cậy và độ trễ của dữ liệu. Có thể nói rằng điều khiển luồng là phần quan trọng nhất của mạng, nó quyết định cách thức mạng hoạt động thế nào và xét về phần cứng thì kiến trúc của mạng phụ thuộc rất lớn vào điều khiển luồng. Điều khiển luồng có hai phần quan trọng là chuyển dữ liệu đến đích chính xác và đảm bảo độ trễ. Và phần khổng thiếu của đảm bảo độ trễ là cơ chế phòng tránh tắc nghẽn. Một mạng được đánh giá cao khi khả năng phòng ngừa tắc nghẽn cao. • Chất lượng dịch vụ Phụ thuộc vào ứng dụng mà mạng sử dụng chất lượng dịch vụ khác nhau, nhưng phần lớn các ý tưởng xây dựng mạng NoC đều sử dụng dịch vụ tin cậy. Một ví dụ đơn giản như câu lệnh từ CPU đến RAM hay thiết bị ngoại vi cần chính xác và đầy đủ. Trang 15/68 THIẾT KẾ VÀ MÔ PHỎNG MẠNG TRÊN CHIP N CHIỀU 2.3.4 Kiến trúc mạng trong Avalon Mô hình NoC trong hệ thống Avalon Hình 5 Mô hình cơ bản của hệ thống NoC Trong hệ thống này, một thành phần như bộ xử lý sẽ giao tiếp với một thành phần như một bộ điều khiển bộ nhớ. Mỗi thành phần này sử dụng các dịch vụ của các giao diện mạng để giao tiếp với nhau thông qua một loại giao tiếp, chẳng hạn như giao tiếp ánh xạ bộ nhớ Altera's Avalon® (Avalon-MM) hoặc giao tiếp nâng cao của Avalon (AXI). Các giao tiếp mạng cung cấp các dịch vụ thông qua lệnh và phản hồi (the command and response networks). Trong mạng có lớp transport thực hiện việc truyền dữ liệu bằng gói (package). 2.4. Kết chương Trong chương này, luận văn đã trình bày tổng quan về NoC, các khái niệm cơ bản trong NoC, tại sao lại sử dụng NoC trong tương lai và cách truyền thông trong NoC so sánh với cách thiết kế cũ. Chương sau luận văn sẽ trình bày chi tiết hơn về cách thực hiện NoC trong thực tế. Trang 16/68 THIẾT KẾ VÀ MÔ PHỎNG MẠNG TRÊN CHIP N CHIỀU CHƯƠNG 3: THIẾT KẾ NOC 3.1. Hỗ trợ thiết kế NOC trong Qsys Kiến trúc NoC áp dụng kỹ thuật công nghệ mạng và truyền thông hệ thống con trong hệ thống trên một thiết kế chip. Kiến trúc kết nối NOC có lợi thế đáng kể so với truyền thống, không có NoC, chẳng hạn như hỗ trợ cho việc thiết kế và tối ưu hóa các lớp độc lập. Qsys là một công cụ tích hợp hệ thống mạnh mẽ được tích hợp trong phần mềm phát triển Quartus II của Altera. Qsys đơn giản hóa việc thiết kế hệ thống FPGA, cho phép các nhà thiết kế tạo ra một hệ thống hiệu năng cao dễ dàng, mà không cần kiến thức rộng về kết nối hoặc mạng on-chip. Qsys bao gồm một thư viện IP mà từ đó các nhà thiết kế có thể xây dựng và thực hiện một hệ thống trên một chip (on a chip (SoC)) trong thời gian ít hơn nhiều so với cách sử dụng các phương pháp tích hợp hướng thủ công, truyền thống. Sử dụng phương pháp thiết kế truyền thống, các nhà thiết kế viết mô-đun HDL để kết nối các thành phần của hệ thống. Sử dụng Qsys, nhà thiết kế khởi tạo và tham số hóa các thành phần hệ thống bằng cách sử dụng một GUI hoặc một bộ mô tả kịch bản hệ thống. Sau đó Qsys tạo ra các thành phần và kết nối một cách tự động. Qsys Interconnect Thành phần quan trọng nhất của Qsys là Qsys Interconnect. Đây là thành phần tạo các kết nối giữa các hệ thống con trên chip. Qsys Interconnect có thể kết nối các thành phần có các giao tiếp như sau: • Streaming: kết nối các Avalon Streaming (Avalon-ST) • Memory-Mapped: kết nối ánh xạ địa chỉ giữa các Master và Slave (Avalon-MM và AXI) thông qua lệnh đọc và ghi dữ liệu. Trang 17/68 THIẾT KẾ VÀ MÔ PHỎNG MẠNG TRÊN CHIP N CHIỀU • Tri-state Conduits: kết nối các bộ điểu khiển trong mạch FPGA tới các thiết bị tri-state trên PCB sử dụng thông tin mã hóa trạng thái tristate. • Interrupts: kết nối giữa phần gửi và phần nhận ngắt của thành phần thực hiện ngắt. • Clocks: kết nối giữa nguồn phát tín hiệu đồng hồ với đầu vào xung nhịp của các thành phần. • Resets: kết nối giữa nguồn phát tín hiệu reset với các đầu vào reset. • Conduits: kết nối point to point. 3.2. Giao tiếp ánh xạ bộ nhớ “Giao tiếp ánh xạ bộ nhớ (Memory-Mapped Interfaces) được sử dụng cho các thành phần Avalon-MM và AXI trong hệ thống. Kết nối này dựa trên kiến trúc NoC. Giao dịch giữa Master và Slave được đóng gói và truyền qua mạng. Tầng mạng lệnh chuyển các gói dữ liệu của lệnh đọc và ghi dữ liệu từ master tới slave. Sau đó tầng mạng trả lời chuyển các gói dữ liệu trả lời từ slave tới master” (Qsys Interconnect, p.2). Qsys interconnect kết nối master và slave có các đặc tính sau: • Bất kỳ số lượng của các thành phần master và slave. Mối quan hệ master-slave có thể là một-một, một-nhiều, nhiều-một, hay nhiềunhiều. • Chiều rộng dữ liệu của master và slave có thể khác nhau. • Master và slave có thể có xung nhịp khác nhau. • Các thành phần với các thuộc tính và tín hiệu giao diện khác nhau. Qsys điều chỉnh các thành phần giao tiếp để giao tiếp với những khác biệt sau đây có thể được kết nối: Trang 18/68 THIẾT KẾ VÀ MÔ PHỎNG MẠNG TRÊN CHIP N CHIỀU o Giao tiếp Avalon và AXI sử dụng tín hiệu hoạt động cao và hoạt động thấp. o Giao tiếp với các đặc tính burst khác nhau. o Giao tiếp với thời gian trễ khác nhau o Giao tiếp với các dữ liệu khác nhau chiều rộng o Giao tiếp có các tín hiệu cổng khác nhau Như hình dưới mô tả việc thực hiện các kết nối cở bản giữa master vả slave sử dụng một cấu trúc liên kết mạng. Khi bạn tạo một hệ thống Qsys, Qsys thực hiện các kết nối đã được chỉ định, thay thế các kết nối điểm-điểm đã tạo ra trong cột Connections Qsys thành một cấu trúc liên kết mạng. Đây là kiến trúc NoC với nhiều Master và nhiều Slave. Trang 19/68
- Xem thêm -

Tài liệu liên quan