intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Thiết kế IC: Phần 3 - Nguyễn Đức Tiến

Chia sẻ: Minh Vũ | Ngày: | Loại File: PDF | Số trang:8

68
lượt xem
5
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng "Thiết kế IC - Phần 3: FPGA" cung cấp cho người học các kiến thức: Kiến trúc PAL - PROM, kiến trúc GAL, kiến trúc FPGA, vì sao FPGA lập trình được, khối logic lập trình được, phân loại FPGA theo độ phức tạp của đơn vị xử lý,... Mời các bạn cùng tham khảo nội dung chi tiết.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Thiết kế IC: Phần 3 - Nguyễn Đức Tiến

  1. 9/5/2011 Programable Programable Logic Array, cả ma trận AND và OR Array Logic (a) ñều lập trình ñược. Programable Tiết kiệm dung lượng ma trận. ROM (b) Bị hạn chế bởi số lượng các cổng AND khi số ñầu vào PAL thương mại của cổng OR lớn hơn số cổng AND. Trễ truyền lan lớn hơn và mật ñộ tích hợp nhỏ. Lập trình A B C Yêu cầu: F = AB = ABC + ABC email ktmt@soict.hut.edu.vn 49 email ktmt@soict.hut.edu.vn 50 Generic Array Logic nâng FPGA gồm 3 thành phần chính cấp từ PAL, gồm một ma Khối logic – Logic Block (LB): ñơn vị xử lý. trận AND lập trình ñược Khối Vào ra – IO cell: giao tiếp với bên ngoài. (cấu tạo từ EEPROM) và Liên kết nối – Interconnection: liên kết các ñơn vị xử lý. ma trận OR cố ñịnh. Tuy nhiên, các cổng OR Configurable Logic Block nằm trong các macrocell ñược nối với flip-flop và các Thành phần khác I/O Block Connect Connec t bộ dồn kênh ñể có thể chọn Buffer tín hiệu ra. ClockDll Ví dụ: Dùng GAL ñiều khiển … Tên gọi chung của các thiết ñèn giao thông: bị như PAL, PLA, GAL… là Programable Logic Device email ktmt@soict.hut.edu.vn 51 email ktmt@soict.hut.edu.vn 52 1
  2. 9/5/2011 1/3 2/3 Cả 3 thành phần: khối logic, khối vào ra, liên kết Với FPGA, lập trình là quá trình ñịnh tuyến giữa nối, ñều lập trình ñược. các phần tử logic, flipflop… ñã ñược chế tạo cố ñịnh sẵn, ñể thực thi một tác vụ nào ñó. Lập trình cho khối logic là hành ñộng: “có kết nối hay không phần tử logic A với phần tử logic B?” Một tuyến ñều ñược chế tạo sẵn, và ñính kèm một khóa ñóng mở. Tuyến ñược thiết lập hoặc Lập trình cho khối vào ra là hành ñộng: “có kết nối hủy, tương ứng với trạng thái khóa ñóng hay mở. hay không ñầu ra logic A với chuẩn ngoại vi B?” Mỗi trạng thái của khóa ñóng/mở ứng với một bit Lập trình cho liên kết nối là hành ñộng: “có kết nối nhớ trạng thái 0/1 tương ứng. hay không khối logic A với khối logic/vào ra B?” Tập hợp các bít nhớ tạo thành bộ nhớ cấu hình cho FPGA.  Bảng ñịnh tuyến ñược lưu trữ trong bộ nhớ.  Công cụ CAD sẽ dịch HDL thành bảng ñịnh tuyến. email ktmt@soict.hut.edu.vn 53 LB 3/3 Ánh xạ vào Phân tích FPGA cụ thể Tất cả ASIC lập trình ñược, bao gồm FPGA, ñều chứa các khối logic (cell logic) cơ bản giống nhau HDL RTL BIT file • c := a + b; • • 01000100 tạo thành dải. • if (c == 1) then cf := 1; • 11010101 • 10001001 Có 4 loại khối logic: I/O Cell I/O Cell I/O Cell Dựa vào bảng tìm kiếm (LUT – Lookup Table) Xilinx I/O LB LB LB I/O Cell Cell Bộ nhớ cấu hình Dựa vào bộ ghép kênh I/O I/O (Multiplexers) Actel Cell LB LB LB Cell Dựa vào PAL/PLA I/O LB LB LB I/O Altera Cell Cell Transistor Pairs I/O Cell I/O Cell I/O Cell email ktmt@soict.hut.edu.vn 55 email ktmt@soict.hut.edu.vn 56 2
  3. 9/5/2011 1/3 RAM 16bit WE A0 0 MUX Mux 2x1 có thể Biểu diễn Bảng tìm kiếm, LUT, 0 0 G4 1 0 G A1 1 thực hiện ñược mức Look-Up Table, là một 2 0 G3 G2 Func Func.. Gen. SRAM có K ñầu vào với S G4 3 1 G1 các hàm bên transistor G3 4 1 SA G2 G1 5 1 2K bit nhớ, thực hiện 6 7 1 1 1 Cấu trúc cell logic ACT 1 (ñơn module) ñược mọi hàm logic có 8 9 0 0 G4 Cell ACT 1 chỉ có K biến. 10 11 1 0 G3 G2 một module logic. Thông thường, K = 4. 12 13 0 0 G1 14 0 Cell ACT 2, 3 có 15 1 nhiều module Tín hiệu ra của một LUT có thể quay trở lại, thành logic hơn và có ñầu vào của chính LUT ñó, hoặc LUT khác. Flip Flop riêng. Trong một LB, thường có 3 LUT và ñược gọi là bộ Cấu tạo Flip Flop thực hiện hàm F, G và H. email ktmt@soict.hut.edu.vn 57 email ktmt@soict.hut.edu.vn 58 2/3 3/3 Các LUT F và G tương ñương và ñộc lập với Số liệu ñưa vào LB có thể ñược xử lý bởi các hàm nhau, thực thi các hàm 4 biến và ñưa kết quả tính 4 ñầu vào, có thể ñược chốt ở thanh ghi, có thể toán ra ngoài CLB, hoặc nhớ vào FF. ñược chọn kênh, hoặc bởi cả 3 thao tác trên. Nếu phép toán có nhiều hơn 4 biến thì LUT F, G sẽ ñưa kết quả tới LUT H ñể mở rộng thêm. Flip-Flop ñóng vai trò: Khối logic lập trình • Bit nhớ hoặc ñược, CLB, của XC4000 E/X • Chốt dữ liệu Hai FF có thể set/reset ñồng bộ/không ñồng bộ, tích cực theo sườn âm/dương… Cấu trúc cơ bản của LB dạng LUT email ktmt@soict.hut.edu.vn 59 email ktmt@soict.hut.edu.vn 60 3
  4. 9/5/2011 Còn ñược gọi là CrossPoint FPGA. Số lượng cổng ít, ~ 4000 LE(LB) của Altera Cyclone II email ktmt@soict.hut.edu.vn 61 email ktmt@soict.hut.edu.vn 62 LB LB LB Ma trận ñối xứng LB LB LB LB LB Symmetrical Array FPGA kế thừa nhiều ý tưởng thiết kế của các sản phẩm trước  sự quen thuộc trong kiến trúc. LB LB LB LB LB LB LB LB Nhưng số chức năng, mức ñộ tích hợp, khả năng tính toán của từng ñơn vị xử lý trong FPGA có Cấu trúc dòng khác nhau, gồm Coarse /kɔ:s/ , và Fine. LB LB LB Row-based LB LB LB LB LB Coarse-grained: Đơn vị xử lý là một tập hợp của các PLD, các khối cấu hình ñược CLB, thực thi Sea-of-Gates ñược hàm phức tạp, có yêu cầu tính toán lớn. Ví PLD PLD dụ: Actel Mux, Xilinx LUT. PLD PLD Fine-grained: Đơn vị xử lý chỉ gồm các khối cấu PLD phân cấp Hierarchical PLD PLD hình ñược CLB nhỏ, thực thi các hàm logic ñơn (CPLD) PLD PLD giản. Ví dụ Transistor Pairs. email ktmt@soict.hut.edu.vn 63 email ktmt@soict.hut.edu.vn 64 4
  5. 9/5/2011 1/3 2/3 Kết nối ña năng Kết nối dài Kết nối trực tiếp Kết nối dài LB LB Kết nối trực tiếp Kết nối ña năng Ma trận SM SM SM chuyển mạch Liên kết nối dài, tín hiệu clk liên thông toàn bộ dải. Liên kết nối trực tiếp giữa 2 khối LB. Liên kết nối ña năng gồm nhiều kết nối và các chuyển mạch. email ktmt@soict.hut.edu.vn 65 email ktmt@soict.hut.edu.vn 66 3/3 Kết nối dài Phần lớn các kết nối tạo thành các lưới kết nối theo hàng và theo cột. LB LB Giao cắt giữa các kết nối theo hàng và theo cột sẽ tập trung các ñiểm cần lập trình kết nối, tạo thành ma trận chuyển mạch (Switching Matrix), nằm phân tán trong FPGA. LB LB SM LB LB email ktmt@soict.hut.edu.vn 67 email ktmt@soict.hut.edu.vn 68 5
  6. 9/5/2011 QuickLogic Cypress Lucent 2% 2% Lattice 6% 6% Spartan Arrix Virtex Vantis low end middle end high end Xilinx 7% 36% Actel 10% Cyclone Arria Stratix Altera low end middle end high end 31% email ktmt@soict.hut.edu.vn 69 email ktmt@soict.hut.edu.vn 70 Ngôn ngữ HDL phù hợp. Bộ công cụ CAD, EDA phù hợp. Ước lượng ñược số lượng các CLB cần thiết Dự kiến số lượng các chân I/O cần thiết. Điện áp hoạt ñộng. Các FPGA mới sử dụng mức ñiện áp thấp LVTTL, LVCMOS, ñòi hỏi phải chuyển ñổi ñiện áp ñể tương thích với ñiện áp TTL, cung cấp một hoặc nhiều vùng sử dụng ñồng thời ña mức ñiện áp. Tốc ñộ FPGA. Xem Flow của Khả năng tài chính. Aldec-Active email ktmt@soict.hut.edu.vn 71 email ktmt@soict.hut.edu.vn 72 6
  7. 9/5/2011 1/4 2/4 Thiết kế hệ thống (System Design) Bước 1 - Thiết kế hệ thống Phần chức năng thực hiện trên FPGA Tích hợp vào ra Phần chức năng này tích hợp (kết hợp) với phần còn (I/O integration) lại của hệ thống như thế nào Đặc tả thiết kế Bước 2 - Tích hợp vào ra với phần còn lại của hệ (Design Specification) thống Tổng hợp (Synthesis) Kiểm tra thiết kế (Design Verification) Copyright (c) 10/2006 by NPB 73 Copyright (c) 10/2006 by NPB 74 3/4 4/4 Bước 3 - Đặc tả thiết kế Bước 5 - Kiểm tra thiết kế Mô tả chức năng của thiết kế bằng: Thực hiện các mô phỏng, phân tích cuối cùng Các trình soạn sơ ñồ logic (RTL, thời gian…) Các ngôn ngữ ñặc tả phần cứng Xác ñịnh các thông số của ASIC ñã thiết kế Kết hợp mô phỏng (tần số xung nhịp…) Bước 4 - Tổng hợp logic Giống bước Tổng hợp logic trong quy trình ñầy ñủ Kết hợp tối ưu: trễ năng lượng hao phí Nạp chip và chạy thử trên hệ thống! Copyright (c) 10/2006 by NPB 75 Copyright (c) 10/2006 by NPB 76 7
  8. 9/5/2011 1/3 2/3 Spactan II 200 Userguide.pdf ProASIC3 Evaluation Board Spactan II 300 PCI 32bits RS232 email ktmt@soict.hut.edu.vn 77 email ktmt@soict.hut.edu.vn 78 1/2 2/2 IDE của nhà sản xuất FPGA. Một số gói chương trình của bên thứ 3: Leonardo Spectrum, CT tổng hợp của Mentor Graphics Synplify, CT tổng hợp của Synplicity Atera Xilinx Actel ModelSim , CT mô phỏng của Mentor Graphics. Active-HDL, CT thiết kế và mô phỏng của Aldec Active Chỉ có nhà sản xuất mới thấu hiểu nguyên tắc hoạt ñộng của FPGA của họ.  chỉ có các IDE của nhà sản xuất mới routing, timing, cấu hình ñược cho FPGA. EDA của bên thứ 3 chỉ xử lý mức logic, rồi gọi IDE của nhà sản xuất ñể ñảm nhiệm mức vật lý. email ktmt@soict.hut.edu.vn 79 email ktmt@soict.hut.edu.vn 80 8
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
4=>1