Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 54 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
54
Dung lượng
1,44 MB
Nội dung
CHƯƠNG CẤU TRÚC FPGA FPGA LÀ GÌ? FPGA (Field-Programmable Gate Array) vi mạch dùng cấu trúc mảng phần tử logic mà người dùng lập trình LỊCH SỬ RA ĐỜI FPGA FPGA thiết kế Ross Freeman, người sáng lập cơng ty Xilinx vào năm 1984( FPGA có khả chứa tới từ 100.000 đến hàng vài tỷ cổng logic) kiến trúc FPGA cho phép tích hợp số lượng tương đối lớn phần tử bán dẫn vào vi mạch so với kiến trúc trước CPLD Đặc điểm FPGA FPGA cơng nghệ IC lập trình tiên tiến Điểm khác biệt FPGA so với IC trước chế tái cấu trúc FPGA có mật độ tích hợp logic lớn số IC khả trình với số cổng tương đương lên tới hàng trăm nghìn, hàng triệu cổng Thiết kế FPGA thường thực ngôn ngữ HDL Hiện công nghệ phát triển nhiều công ty bán dẫn lớn Xilinx Altera Mật độ tích hợp số IC thơng dụng ỨNG DỤNG Ứng dụng FPGA bao gồm: xử lý tín hiệu số DSP, hệ thống hàng khơng,vũ trụ, quốc phịng, tiền thiết kế mẫu ASIC (ASIC prototyping), hệ thống điều khiển trực quan, phân tích nhận dạng ảnh, nhận dạng tiếng nói, mật mã học, mơ hình phần cứng máy tính Cơng nghệ tái cấu trúc FPGA Hiện có tất cơng nghệ tái cấu trúc cho IC khả trình: - fuse - EPROM - EEPROM - SRAM based - Antifuse Công nghệ tái cấu trúc SRAM-based dùng phổ biến cho FPGA CẤU TẠO CỦA FPGA GỒM: Các khối logic lập trình (logic block) Hệ thống mạch liên kết lập trình Khối vào/ra (IO Pads) Phần tử thiết kế sẵn khác DSP slice, RAM, ROM, nhân vi xử lý CẤU TRÚC MỘT FPGA Kiến trúc chi tiết Xilinx FPGA Spartan-3E Spartan 3E FPGA có nhiều loại khác khác kích thước, tài nguyên logic, cách thức đóng gói, tốc độ, số lượng chân vào Các loại kết nối kết kết kết kết nối nối nối nối xa (long lines) kép (double lines) ba (hex lines) trực tiếp (direct line) Các dạng kết nối liên hệ với thông qua cấu trúc ma trận chuyển (switch matrix) Khối logic FPGA Phần tử FPGA khối logic (logic block) Khối logic cấu thành từ LUT phần tử nhớ đồng flip-flop LUT (Look up table) khối logic thực hàm logic từ đầu vào, kêt hàm tùy vào mục đích mà gửi ngồi khối logic trực tiếp hay thơng qua phần tử nhớ flip-flop ngồi đầu vào kể hỗ trợ thêm đầu vào bổ sung từ khối logic phân bố trước sau nâng tổng số đầu vào LUT lên chân Cấu trúc nhằm tăng tốc số học logic Hệ thống mạch liên kết Là khối chuyển mạch FPGA Mạng liên kết FPGA cấu thành từ đường kết nối theo hai phương ngang đứng, tùy theo loại FPGA mà đường kết nối chia thành nhóm khác Các đường kết nối nối với thơng qua khối chuyển mạch lập trình (programable witch), khối chuyển mạch chứa số lượng nút chuyển lập trình đảm bảo cho dạng liên kết phức tạp khác Các phần tử tích hợp sẵn Ngồi khối logic tùy theo loại FPGA khác mà có phần tử tích hợp thêm khác Quy trình thiết kế FPGA tổng quát Mô tả thiết kế: Thiết kế có khối nào? Mỗi khối có chức gì? Hoạt động thiết kế khối ? Phân tích kỹ thuật sử dụng thiết kế công cụ, phần mềm hỗ trợ thiết kế Mô chức (Function simulation): sau mô tả thiết kế, người thiết kế cần mô tổng thể thiết kế mặt chức để kiểm tra thiết kế có hoạt động với chức yêu cầu Tổng hợp logic (Logic Synthesis): tổng hợp logic q trình tổng hợp mơ tả thiết kế thành sơ đồ bố trí mạch (netlist) Gồm bước:chuyển đổi mã RTL, mã HDL thành mô tả dạng biểu thức đại số Boolean dựa biểu thức kết hợp với thư viện tế bào chuẩn sẵn có để tổng hợp nên thiết kế tối ưu Hiệu chỉnh kết nối (Datapath Schematic): nhập netlist ràng buộc thời gian vào cơng cụ phân tích thời gian (timing analysic) tính thời gian trễ kết nối dựa ràng buộc Dựa kết phân tích (report) cơng cụ phân tích, xác định kết nối không thỏa mãn thời gian tổng hợp logic hiệu chỉnh lại ràng buộc Thực thi Quá trình đặt sơ đồ netlist lên chip, gọi trình thực thi (Device Implementation) Các bước thực thi Ánh xạ (mapping hay gọi fitting ăn khớp): chuẩn bị liệu đầu vào, xác định kích thước khối Các khối phải phù hợp với cấu trúc tế bào FPGA (gồm nhiều cổng logic) đặt chúng vào vị trí tối ưu cho việc chạy dây Các bước thực thi Đặt khối định tuyến (Place & Route): Đặt khối: đặt khối ánh xạ vào tế bào (cell) vị trí tối ưu cho việc chạy dây Định tuyến: bước thực việc nối dây tế bào Quá trình Nạp (download) lập trình (program) Sau trình thực hiện, thiết kế cần nạp vào FPGA dạng dòng bit (bit stream) Quá trình nạp thiết kế (download) vào FPGA thường nạp vào nhớ bay Thơng tin cấu hình nạp vào nhớ Lập trình (program) thuật ngữ để mơ tả q trình nạp chương trình cho nhớ không bay ... tái cấu trúc FPGA Hiện có tất công nghệ tái cấu trúc cho IC khả trình: - fuse - EPROM - EEPROM - SRAM based - Antifuse Công nghệ tái cấu trúc SRAM-based dùng phổ biến cho FPGA CẤU TẠO.. .FPGA LÀ GÌ? FPGA (Field-Programmable Gate Array) vi mạch dùng cấu trúc mảng phần tử logic mà người dùng lập trình LỊCH SỬ RA ĐỜI FPGA FPGA thiết kế Ross Freeman,... lên chân Cấu trúc nhằm tăng tốc số học logic Hệ thống mạch liên kết Là khối chuyển mạch FPGA Mạng liên kết FPGA cấu thành từ đường kết nối theo hai phương ngang đứng, tùy theo loại FPGA mà