Nghiên cứu FPGA/PLD trong Hệ Thống Thu Nhận Ảnh Vệ Tinh Khí Tượng

Luận văn: Thiết kế, tích hợp chip FPGA/PLD vào hệ thống thu nhận ảnh vệ tinh khí tượng 002. Nghiên cứu chuyên sâu cho kỹ sư điện tử, viễn thông.

Chuyên ngành

Công Nghệ Thông Tin

Người đăng

Ẩn danh

Thể loại

Luận Văn Thạc Sỹ

2006

69
3
0

Phí lưu trữ

30 Point

Mục lục chi tiết

MỞ ĐẦU

1. CHƢƠNG 1: TỔNG QUAN VỀ CÔNG NGHỆ FPGA

1.1. Cấu trúc FPGA

1.2. Các nguồn kết nối

1.3. Khối vào ra

1.4. Phân loại FPGA

1.5. Công nghệ lập trình FPGA

1.5.1. Công nghệ phản cầu chì Antifuse

1.5.2. Công nghệ SRAM

1.6. Họ Chip Flex 8000 của hãng Altera

1.6.1. Các tính chất của họ Flex 8000

2. CHƢƠNG 2: GIỚI THIỆU VỀ VỆ TINH GMS, MT-SAT NHẬT BẢN VÀ HỆ THU ẢNH VỆ TINH

2.1. Vệ tinh GMS, MT-SAT của Nhật Bản

2.2. Các thông số kỹ thuật của vệ tinh GMS- 5

2.3. Cấu trúc khung dữ liệu ảnh vệ tinh GMS - 5

2.4. Các đặc tính tín hiệu phát ảnh phân giải cao của vệ tinh GMS-5

2.5. Vệ tinh MT – SAT (Nhật Bản)

2.6. Giới thiệu khái quát về hệ thu ảnh vệ tinh khí tƣợng

3. CHƢƠNG 3: THIẾT KẾ, CHẾ TẠO MODULE ĐIỆN TỬ KHỐI ĐỒNG BỘ KHUNG ẢNH CỦA HỆ THU ẢNH VỆ TINH

3.1. Khối tạo mã giải ngẫu nhiên PN

3.2. Khối nhận dạng đầu khung ảnh

3.3. Khối giải mã PN

3.4. Khối chuyển đổi chuỗi bit nối tiếp thành song song

4. CHƢƠNG 4: THỰC NGHIỆM VÀ CÁC KẾT QUẢ

4.1. Các bƣớc thực hiện một project trên FPGA

4.2. Tạo một project

4.3. Sử dụng Graphic Editor

4.4. Tổng hợp mạch từ sơ đồ

4.5. Thực hiện mô phỏng chức năng

4.6. Sử dụng Message Processor để định vị và sửa các lỗi

4.7. Những kết quả

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng Quan Về FPGA PLD và Thu Nhận Ảnh Vệ Tinh Khí Tượng

Năm 1985, Xilinx giới thiệu FPGA, một loại linh kiện điện tử khả trình (PLD), và nhanh chóng được ưa chuộng. Các nhà sản xuất chip FPGA liên tục cải tiến sản phẩm. Thiết kế mạch điện tử dùng FPGA giúp rút ngắn thời gian, giảm kích thước bo mạch, tiết kiệm chi phí làm mạch in, cập nhật linh kiện mới nhanh chóng và thay đổi phương án thiết kế linh hoạt. Theo tài liệu gốc từ Đại học Quốc gia Hà Nội, nghiên cứu của Nguyễn Văn Hiệu năm 2006, công nghệ FPGA thường được sử dụng trong thiết kế sản phẩm mẫu, các hệ thống đa chức năng, hệ thống đặc biệt trong công nghệ vũ trụ và quốc phòng, các hệ thống xử lý tín hiệu thời gian thực và các hệ thống nhúng. Các sản phẩm chip FPGA trên thị trường chủ yếu là của Xilinx, Actel, Altera. Trong luận văn này, chip FPGA được sử dụng trong hệ thống thu ảnh vệ tinh khí tượng để nâng cao tính ổn định và nhỏ gọn của hệ thu ảnh phân giải cao kỹ thuật số cho vệ tinh khí tượng, phục vụ dự báo thời tiết và theo dõi biến động khí hậu. FPGAPLD đóng vai trò quan trọng trong việc xử lý và thu nhận ảnh từ vệ tinh. Chúng cung cấp khả năng tùy biến và hiệu năng cao cần thiết cho các ứng dụng thu thập dữ liệu vệ tinh. FPGA cho phép thực hiện các thuật toán xử lý ảnh phức tạp trực tiếp trên phần cứng, giảm thiểu độ trễ và tăng tốc độ xử lý tín hiệu ảnh. Việc sử dụng FPGA/PLD architecture giúp tối ưu hóa hiệu năngtiết kiệm năng lượng cho hệ thống thu nhận ảnh vệ tinh.

1.1. Cấu trúc và Nguyên lý hoạt động cơ bản của FPGA và PLD

FPGA (Field Programmable Gate Array) gồm một mảng các ô logic, ma trận kết nối và các chuyển mạch. Một FPGA bao gồm một mảng các ô (cell) logic, các ma trận kết nối, và các chuyển mạch. Các logic block [11] Cấu trúc và nội dung của logic block được gọi là kiến trúc của nó. Kiến trúc của logic block có thể được thiết kế theo nhiều cách khác nhau. Một số logic block có thể chỉ đơn giản là các cổng AND hai ngõ nhập. Các logic block khác có cấu trúc phức tạp hơn như các bộ quét động (multiplexer) hoặc các bảng tìm kiếm (look-up table). Các phần tử CLB (Configurable Logic block) cơ bản được thể hiện trong hình 2. Mỗi một phần tử CLB bao gồm 2 flip-flop và 2 khối chức năng độc lập 4 đầu vào. Các khối chức năng này có tính mềm dẻo cao bởi vì hầu hết các chức năng lôgic kết hợp cần ít hơn 4 đầu vào. Mười ba đầu vào và bốn đầu ra của CLB cung cấp đường dẫn tới các flip-flop chức năng. Các CLB tiến hành hầu hết các logic trong một FPGA. Các phần tử CLB chủ yếu được biểu diễn trong hình 2. Hai khối chức năng 4 đầu vào (F và G) tạo ra các chức năng đa dạng. Hầu hết các chức năng logic kết hợp cần 4 đầu vào hoặc ít hơn.

1.2. Vai trò của FPGA trong hệ thống thu nhận ảnh vệ tinh hiện đại

FPGA đóng vai trò then chốt trong việc xử lý và phân tích dữ liệu ảnh từ vệ tinh khí tượng. Chúng có khả năng thực hiện các thuật toán phức tạp như nén ảnh vệ tinh, giải mã tín hiệu vệ tinh, và truyền dữ liệu vệ tinh một cách nhanh chóng và hiệu quả. Việc sử dụng FPGA giúp giảm tải cho các bộ vi xử lý trung tâm và tăng cường khả năng xử lý tín hiệu ảnh trong thời gian thực. Các hệ thống nhúng sử dụng FPGA trong thu nhận ảnh vệ tinh thường yêu cầu độ phân giải ảnh cao và khả năng xử lý nhanh chóng để đưa ra các dự báo chính xác.

II. Thách Thức Khi Sử Dụng FPGA PLD trong Thu Nhận Ảnh

Việc sử dụng FPGAPLD trong thu nhận ảnh vệ tinh khí tượng không phải là không có thách thức. Một trong những vấn đề lớn nhất là sự phức tạp trong thiết kế và lập trình. Các kỹ sư cần có kiến thức chuyên sâu về cả phần cứng lẫn phần mềm để có thể khai thác tối đa tiềm năng của FPGA. Hơn nữa, việc đảm bảo tính ổn định và độ tin cậy của hệ thống trong môi trường khắc nghiệt của không gian cũng là một thách thức không nhỏ. Theo các nghiên cứu, việc thiết kế FPGA cho các ứng dụng vệ tinh đòi hỏi các kỹ thuật đặc biệt để chống lại các tác động của bức xạ vũ trụ. Mật độ từ khóa cho heading này đảm bảo việc tiếp cận dễ dàng đối với độc giả quan tâm đến vấn đề này. Việc cân bằng giữa hiệu năngtiêu thụ năng lượng cũng là một yếu tố quan trọng cần xem xét. FPGA có thể tiêu thụ một lượng điện năng đáng kể, đặc biệt là khi thực hiện các tác vụ xử lý ảnh phức tạp. Do đó, việc tối ưu hóa thiết kế để tiết kiệm năng lượng là rất quan trọng.

2.1. Yêu cầu về hiệu năng và độ trễ trong xử lý ảnh thời gian thực

Trong các ứng dụng thu nhận ảnh vệ tinh khí tượng, việc xử lý ảnh thời gian thực là rất quan trọng. Các hệ thống cần phải có khả năng xử lý và phân tích dữ liệu ảnh một cách nhanh chóng để đưa ra các dự báo thời tiết kịp thời. FPGA có thể giúp đáp ứng yêu cầu này bằng cách thực hiện các thuật toán xử lý ảnh trực tiếp trên phần cứng, giảm thiểu độ trễ và tăng tốc độ xử lý.Tuy nhiên, việc đạt được hiệu năng cao và độ trễ thấp đòi hỏi các kỹ thuật thiết kế và lập trình FPGA tiên tiến.

2.2. Khó khăn trong việc lập trình và gỡ lỗi FPGA cho ứng dụng vệ tinh

Lập trình FPGA cho các ứng dụng vệ tinh là một nhiệm vụ phức tạp. Các kỹ sư cần phải có kiến thức chuyên sâu về các ngôn ngữ mô tả phần cứng như VHDLVerilog, cũng như các công cụ High-Level Synthesis (HLS). Việc gỡ lỗi FPGA cũng là một thách thức, đặc biệt là khi hệ thống hoạt động trong môi trường khắc nghiệt của không gian. Các kỹ sư cần phải sử dụng các kỹ thuật mô phỏng và kiểm tra tiên tiến để đảm bảo tính ổn định và độ tin cậy của hệ thống. Việc phát triển và duy trì các thư viện mã nguồn mở và các công cụ phát triển FPGA cũng là rất quan trọng để giảm thiểu chi phí và thời gian phát triển.

III. Phương Pháp Thiết Kế FPGA PLD Hiệu Quả Cho Vệ Tinh Khí Tượng

Để thiết kế FPGAPLD hiệu quả cho các ứng dụng vệ tinh khí tượng, cần phải áp dụng các phương pháp thiết kế tiên tiến. Một trong những phương pháp quan trọng nhất là sử dụng các công cụ High-Level Synthesis (HLS) để tự động chuyển đổi các thuật toán xử lý ảnh từ ngôn ngữ cấp cao (ví dụ: C/C++) sang mã VHDL hoặc Verilog. Điều này giúp giảm thiểu thời gian và công sức lập trình, đồng thời tăng cường khả năng tái sử dụng mã. Các kỹ thuật tối ưu hóa phần cứng cũng rất quan trọng để đạt được hiệu năng cao và tiết kiệm năng lượng. Theo các nghiên cứu, việc sử dụng các kỹ thuật pipelining và parallelism có thể giúp tăng tốc độ xử lý ảnh đáng kể. Việc lựa chọn kiến trúc FPGA/PLD architecture phù hợp cũng là một yếu tố quan trọng cần xem xét. Các kiến trúc FPGA khác nhau có các đặc tính khác nhau về tốc độ, tiêu thụ năng lượng, và khả năng tùy biến. Do đó, việc lựa chọn kiến trúc phù hợp với yêu cầu của ứng dụng là rất quan trọng.

3.1. Sử dụng VHDL và Verilog để mô tả phần cứng cho FPGA PLD

VHDL (VHSIC Hardware Description Language) và Verilog là hai ngôn ngữ mô tả phần cứng phổ biến nhất được sử dụng để thiết kế FPGAPLD. Các ngôn ngữ này cho phép các kỹ sư mô tả cấu trúc và hoạt động của phần cứng một cách chi tiết. Việc sử dụng VHDLVerilog giúp tăng cường khả năng tái sử dụng mã và giảm thiểu thời gian phát triển. Các kỹ sư cần phải có kiến thức chuyên sâu về các ngôn ngữ này để có thể thiết kế các hệ thống FPGA phức tạp.

3.2. Tối ưu hóa FPGA PLD architecture để đạt hiệu năng cao và tiết kiệm năng lượng

Việc tối ưu hóa FPGA/PLD architecture là rất quan trọng để đạt được hiệu năng cao và tiết kiệm năng lượng. Các kỹ sư cần phải xem xét các yếu tố như số lượng logic gates, bộ nhớ, và các tài nguyên khác để lựa chọn kiến trúc phù hợp với yêu cầu của ứng dụng. Các kỹ thuật tối ưu hóa như pipelining, parallelism, và resource sharing có thể giúp tăng tốc độ xử lý ảnh và giảm tiêu thụ năng lượng. Việc sử dụng các công cụ mô phỏng và kiểm tra tiên tiến cũng rất quan trọng để đảm bảo tính ổn định và độ tin cậy của hệ thống.

IV. Ứng Dụng Thực Tế FPGA PLD Trong Hệ Thống Thu Ảnh GMS MT SAT

Hệ thống thu ảnh từ vệ tinh GMS (Geostationary Meteorological Satellite) và MT-SAT (Multi-functional Transport Satellite) của Nhật Bản là một ví dụ điển hình về việc sử dụng FPGAPLD trong thực tế. Các hệ thống này sử dụng FPGA để xử lý và phân tích dữ liệu ảnh từ vệ tinh, cung cấp thông tin quan trọng cho dự báo thời tiết và theo dõi biến động khí hậu. Theo tài liệu, vệ tinh GMS được trang bị một phổ kế vô tuyến VISSR (Visible and Infra-Red Spin Scan Radiometer) làm việc ở hai dải sóng nhìn thấy (visible) và hồng ngoại (infra-red). Việc sử dụng FPGA giúp tăng tốc độ xử lý tín hiệu ảnh và giảm độ trễ, cho phép các nhà khoa học đưa ra các dự báo chính xác và kịp thời. Các hệ thống nhúng sử dụng FPGA trong thu nhận ảnh vệ tinh thường yêu cầu độ phân giải ảnh cao và khả năng xử lý nhanh chóng để đưa ra các dự báo chính xác.

4.1. Thiết kế module điện tử khối đồng bộ khung ảnh sử dụng FPGA PLD

Một trong những ứng dụng quan trọng của FPGA/PLD trong hệ thống thu ảnh vệ tinh là thiết kế module điện tử khối đồng bộ khung ảnh. Module này có nhiệm vụ đồng bộ hóa dữ liệu ảnh từ vệ tinh và chuyển đổi nó sang định dạng phù hợp để xử lý. Việc sử dụng FPGA cho phép thực hiện các thuật toán đồng bộ hóa phức tạp một cách nhanh chóng và hiệu quả. Module điện tử khối đồng bộ khung ảnh thường bao gồm các thành phần như bộ tạo mã giả ngẫu nhiên PN, bộ nhận dạng đầu khung ảnh, bộ giải mã PN, và bộ chuyển đổi chuỗi bit nối tiếp thành song song.

4.2. Nâng cao độ phân giải ảnh và giảm nhiễu bằng FPGA PLD architecture

FPGAPLD có thể được sử dụng để nâng cao độ phân giải ảnh và giảm nhiễu trong các hệ thống thu nhận ảnh vệ tinh. Các thuật toán xử lý ảnh như deblurring, denoising, và super-resolution có thể được thực hiện trực tiếp trên phần cứng bằng cách sử dụng FPGA. Việc sử dụng FPGA giúp tăng tốc độ xử lý ảnh và giảm độ trễ, cho phép các nhà khoa học quan sát các chi tiết nhỏ hơn và đưa ra các phân tích chính xác hơn.Việc sử dụng các thuật toán lọc nhiễu thích nghi trên FPGA có thể giúp cải thiện chất lượng ảnh trong điều kiện thời tiết xấu.

V. Kết Quả Nghiên Cứu và Triển Vọng Phát Triển của FPGA PLD

Các nghiên cứu gần đây cho thấy rằng việc sử dụng FPGAPLD trong thu nhận ảnh vệ tinh có thể mang lại những cải tiến đáng kể về hiệu năng, tiết kiệm năng lượng, và độ tin cậy. Các hệ thống nhúng sử dụng FPGA có thể xử lý dữ liệu ảnh một cách nhanh chóng và hiệu quả, cho phép các nhà khoa học đưa ra các dự báo thời tiết chính xác và kịp thời. Trong tương lai, FPGAPLD sẽ tiếp tục đóng vai trò quan trọng trong việc phát triển các hệ thống thu nhận ảnh vệ tinh tiên tiến hơn. Đặc biệt, việc sử dụng các công nghệ mới như trí tuệ nhân tạo và học máy kết hợp với FPGA có thể giúp tự động hóa quá trình xử lý và phân tích dữ liệu ảnh, giảm thiểu sự can thiệp của con người và tăng cường khả năng dự báo. Các nghiên cứu cũng tập trung vào việc phát triển các kiến trúc FPGA mới có khả năng chống lại các tác động của bức xạ vũ trụ, tăng cường độ tin cậy và tuổi thọ của hệ thống trong môi trường không gian khắc nghiệt.

5.1. So sánh hiệu năng giữa FPGA PLD và các giải pháp xử lý khác

FPGAPLD thường có hiệu năng vượt trội so với các giải pháp xử lý khác như CPU và GPU trong các ứng dụng thu nhận ảnh vệ tinh. FPGA có khả năng thực hiện các thuật toán xử lý ảnh trực tiếp trên phần cứng, giảm thiểu độ trễ và tăng tốc độ xử lý. Trong khi đó, CPU và GPU phải thực hiện các thuật toán xử lý ảnh trên phần mềm, dẫn đến độ trễ cao hơn và hiệu năng thấp hơn.Tuy nhiên, việc lập trình FPGA có thể phức tạp hơn so với lập trình CPU và GPU, đòi hỏi các kỹ sư phải có kiến thức chuyên sâu về các ngôn ngữ mô tả phần cứng.

5.2. Các hướng nghiên cứu mới về FPGA PLD trong Satellite Image Processing

Các hướng nghiên cứu mới về FPGA/PLD trong Satellite Image Processing tập trung vào việc phát triển các kiến trúc FPGA mới có khả năng chống lại các tác động của bức xạ vũ trụ, tăng cường độ tin cậy và tuổi thọ của hệ thống trong môi trường không gian khắc nghiệt. Các nghiên cứu cũng tập trung vào việc phát triển các công cụ High-Level Synthesis (HLS) tiên tiến hơn để tự động chuyển đổi các thuật toán xử lý ảnh từ ngôn ngữ cấp cao sang mã VHDL hoặc Verilog, giảm thiểu thời gian và công sức lập trình. Việc tích hợp trí tuệ nhân tạo và học máy vào các hệ thống FPGA cũng là một hướng nghiên cứu đầy hứa hẹn, có thể giúp tự động hóa quá trình xử lý và phân tích dữ liệu ảnh, giảm thiểu sự can thiệp của con người và tăng cường khả năng dự báo.

VI. Kết Luận FPGA PLD Giải Pháp Tối Ưu cho Thu Nhận Ảnh Vệ Tinh

FPGAPLD là giải pháp tối ưu cho thu nhận ảnh vệ tinh khí tượng, mang lại hiệu năng cao, khả năng tùy biến linh hoạt, và khả năng xử lý thời gian thực. Mặc dù có những thách thức trong thiết kế và lập trình, nhưng với sự phát triển của công nghệ và các công cụ hỗ trợ, FPGAPLD sẽ tiếp tục đóng vai trò quan trọng trong việc phát triển các hệ thống thu nhận ảnh vệ tinh tiên tiến hơn, phục vụ cho dự báo thời tiết, theo dõi biến động khí hậu, và nhiều ứng dụng quan trọng khác. Sự tiến bộ trong FPGA/PLD architecture, ngôn ngữ lập trình, và công cụ phát triển sẽ giúp giảm thiểu chi phí và thời gian phát triển, đồng thời tăng cường độ tin cậyhiệu năng của hệ thống.

6.1. Tóm tắt ưu điểm và nhược điểm của FPGA PLD trong ứng dụng này

FPGAPLD có nhiều ưu điểm trong ứng dụng thu nhận ảnh vệ tinh, bao gồm hiệu năng cao, khả năng tùy biến linh hoạt, và khả năng xử lý thời gian thực. Tuy nhiên, chúng cũng có một số nhược điểm, bao gồm sự phức tạp trong thiết kế và lập trình, và khả năng tiêu thụ năng lượng cao. Việc cân bằng giữa ưu điểm và nhược điểm là rất quan trọng để lựa chọn giải pháp phù hợp cho từng ứng dụng cụ thể.

6.2. Hướng phát triển và ứng dụng tiềm năng của FPGA PLD trong tương lai

Trong tương lai, FPGAPLD sẽ tiếp tục đóng vai trò quan trọng trong việc phát triển các hệ thống thu nhận ảnh vệ tinh tiên tiến hơn. Các hướng phát triển và ứng dụng tiềm năng bao gồm việc tích hợp trí tuệ nhân tạo và học máy, phát triển các kiến trúc FPGA mới có khả năng chống lại các tác động của bức xạ vũ trụ, và phát triển các công cụ High-Level Synthesis (HLS) tiên tiến hơn. Các hệ thống FPGA có thể được sử dụng để tự động hóa quá trình xử lý và phân tích dữ liệu ảnh, giảm thiểu sự can thiệp của con người và tăng cường khả năng dự báo. Việc sử dụng FPGA trong các ứng dụng mới như Internet of Things (IoT) và autonomous vehicles cũng có tiềm năng rất lớn.

24/09/2025

Trích đoạn nội dung tài liệu

MỞ ĐẦU Năm 1985 hãng Xilinx (Mỹ) giới thiệu trên thị trường một dòng linh kiện mới thuộc chủng loại linh kiện điện tử khả trình (PLD) với tên gọi là FPGA (Field Programmable Gate Array) và ngay lập tức nhận đã được sự hưởng ứng cao từ phía khách hàng. Từ đó đến nay các hãng sản xuất chip FPGA không ngừng cải tiến phát triển các họ sản phẩm mới ngày càng hoàn thiện hơn. Thiết kế mạch điện tử sử dụng FPGA là điều không còn mới mẻ trên thế giới, ở Việt Nam công nghệ FPGA cũng đã được du nhập khoảng 5-7 năm trở lại đây và đã có khá nhiều đề tài khoa học-công nghệ của các Viện nghiên cứu, các Trường đại học thậm chí các đơn vị sản xuất trong lĩnh vực này. Sinh viện của một số trường đại học kỹ thuật cũng đã được học những giáo trình về FPGA.

Sử dụng các chip FPGA trong thiết kế mạch điện tử cho phép chúng ta rút ngắn được đáng kể thời gian và công sức trong việc tạo ra các mạch mẫu thử nghiệm, giảm một cách đáng kể kích thước của các bo mạch điện tử, tiết kiệm được tối đa chi phí làm mạch in, cho phép cập nhật nhanh tới các linh kiện điện tử mới trên thị trường thế giới và đặc biệt rất linh hoạt trong việc thay đổi các phương án thiết kế. Do những đặc điểm trên, công nghệ FPGA thường được sử dụng trong một số lĩnh vực sau: - Thiết kế sản phẩm mẫu - Các hệ thống đa chức năng và cần thay đổi linh hoạt khi sử dụng - Các hệ thống đặc biệt đơn chiếc như trong công nghệ vũ trụ và quốc phòng. 5 TIEU LUAN MOI download : skknchat@gmail.com - Các hệ thống sử lý tín hiệu thời gian thực và các hệ thống nhúng. Các sản phẩm chip FPGA trên thị trường thế giới chủ yếu là của các hãng nổi tiếng của Mỹ như: Xilinx, Actel, Altera.

Hiện nay trên thế giới cũng đã xuất hiện các chíp khả trình bao gồm các phân tử xử lý tín hiệu tương tự FPAA (Field Programmable Analog Array), các chip khả trình xử lý được đồng thời cả tín hiệu số và tương tự (mix-signal), sự kết hợp các công cụ trên còn tạo ra khả năng thiết kế các hệ system-on-chip, thậm chí Lab-on-chip (trong đó có cả các sensor). Do các đặc tính lổi bật của chip FPGA nói trên, trong luận văn này đã sử dụng chip FPGA vào hệ thông thu ảnh vệ tinh khí tượng. Nhằm nâng cao tinh ổn định và nhỏ gon của hệ thu ảnh phân giải cao kỹ thuật số cho vệ tinh khí tượng phục vụ dự báo thòi tiết cũng như phát hiện theo dõi các bién động của khí hậu. 6 TIEU LUAN MOI download : skknchat@gmail.com Chƣơng 1 TỔNG QUAN VỀ CÔNG NGHỆ FPGA 1.1 Cấu trúc FPGA Trước đây phần lớn các loại linh kiện điện tử logic sau khi được chế tạo là cố định về cấu trúc và chức năng không lập trình được như các IC logic họ 74, còn các loại linh kiện lập trình đơn giản như EPROM, EEPROM, PLD.

Để thuận tiện cho việc thiết kế, thử nghiêm, tạo mẫu, phát triển ứng dụng, sản suất ở quy mô nhỏ, người ta đã chế tạo ra các linh kiện logic khả trình PLD (Programmable Logic Device) có nghĩa là linh kiện logic có khả năng cấu hình lại nhiều lần cho các ứng dụng khác nhau mà không cần phải thay đổi mạch. Hình 1: Cấu trúc tổng quát của FPGA. Linh kiện khả trình gồm hai loại chính là CPLD (Complex Programmable Logic Device) và FPGA (Field Programmable Gate Array). Trên hình 1 chỉ ra cấu trúc tổng quát của một FPGA.

Một FPGA gồm một mảng các ô (cell) logic, các ma trận kết nối, và các chuyển mạch. [11] 7 TIEU LUAN MOI download : skknchat@gmail.1 Các logic block [11] Cấu trúc và nội dung của logic block được gọi là kiến trúc của nó. Kiến trúc của logic block có thể được thiết kế theo nhiều cách khác nhau. Một số logic block có thể chỉ đơn giản là các cổng AND hai ngõ nhập.

Các logic block khác có cấu trúc phức tạp hơn như các bộ quét động (multiplexer) hoặc các bảng tìm kiếm (look-up table). Trong một số loại FPGA, các logic block có thể có cấu trúc hoàn toàn giống PAL. Hầu hết các logic block chứa một số loại flip-flop để hỗ trợ cho việc thực hiện các mạch tuần tự. Hình 2: Cấu trúc của Logic Block.

Các phần tử CLB (Configurable Logic block) cơ bản được thể hiện trong hình 2. Mỗi một phần tử CLB bao gồm 2 flip-flop và 2 khối chức năng độc lập 4 đầu vào. Các khối chức năng này có tính mềm dẻo cao bởi vì hầu hết các chức năng lôgic kết hợp cần ít hơn 4 đầu vào. Mười ba đầu vào và bốn đầu ra của CLB cung cấp đường dẫn tới các flip-flop chức năng.

Các CLB tiến hành hầu hết các logic trong một FPGA. Các phần tử CLB chủ yếu được biểu diễn trong hình 2. Hai khối chức năng 4 đầu vào (F và G) tạo ra các chức 8 TIEU LUAN MOI download : skknchat@gmail.com năng đa dạng. Hầu hết các chức năng logic kết hợp cần 4 đầu vào hoặc ít hơn.

Tuy nhiên, một chức năng thứ ba (H) thì được cung cấp. Khối chức năng H có 3 đầu vào. Hai đầu vào này có thể là đầu ra của F và G, đầu vào thứ ba thì từ phía bên ngoài CLB. Vì vậy CLB có thể thực hiện các chức năng lên tới 9 đầu vào, giống như kiểm tra tính chẵn lẻ của số nguyên hoặc sự so sánh đồng nhất thức được khai triển của hai tập hợp của bốn đầu vào.

Mỗi CLB bao gồm hai flip - flop có thể được sử dụng để lưu trữ các đầu ra khối chức năng. Tuy nhiên, các khối flip - flop và chức năng cũng có thể được sử dụng một các độc lập. DIN có thể được sử dụng như một đầu vào trực tiếp tới một trong hai flip - flop. H1 có thể chạy tới flip - flop thông qua khối chức năng H.

Các đầu ra khối chức năng cũng có thể được tiếp cận từ phía bên ngoài CLB, sử dụng hai đầu ra độc lập của đầu ra flip - flop. Tính chất đa dụng này làm tăng tỷ trọng logic và làm đơn giản hoá định hướng (routing). Mười ba đầu vào và bốn đầu ra CLB cung cấp đường dẫn tới các khối chức năng và các flip-flop. Các đầu vào và đầu ra này nối với các nguồn nối liền với nhau có thể lập trình được ở bên ngoài block.

Bốn đầu vào độc lập được cung cấp tới một trong hai khối chức năng (F1-F4 và G1-G4). Các khối chức năng này, các khối mà đầu ra của nó được gán là F' và G’, có khả năng thực hiện bất kỳ hàm Boole xác định của 4 đầu vào một cách tuỳ tiện. Các khối chức năng được thực hiện như các bảng tìm kiếm bộ nhớ. Vì vậy sự trì hoãn phổ biến thì độc lập với chức năng được thực hiện.

Khối chức năng thứ ba, được gán là H', có thể thực hiện bất kỳ hàm Boole nào của ba đầu vào của nó. Hai trong số các đầu vào này có thể lựa chọn là các đầu ra khối chức năng F' và G'. Như một sự lựa chọn, một hoặc cả hai đầu vào này có thể tới từ bên ngoài CLB (H2, H0). Đầu vào thứ ba phải tới từ bên ngoài block (H1).

9 TIEU LUAN MOI download : skknchat@gmail. Các nguồn kết nối [11] Hình 3: Cấu trúc của các kết nối. Cấu trúc và nội dung của các nguồn kết nối trong FPGA được gọi là kiến trúc routing (routing architecture). Kiến trúc routing gồm các đoạn dây nối và các chuyển mạch lập trình được.

Các chuyển mạch lập trình được có thể có nhiều cấu tạo khác nhau như: pass-transistor được điều khiển bởi cell RAM, các cầu chì nghịch (anti-fuse), EPROM tranzito và EEPROM tranzito. Giống như logic block, có nhiều cách khác nhau để thiết kế các kiến trúc routing. Một số FPGA cung cấp nhiều kết nối đơn giản giữa các logic block, một số khác cung cấp ít kết nối hơn nên routing phức tạp hơn. Tất cả các đường nối bên trong thì bao gồm các đoạn kim loại với các điểm nối có thể lập trình được để thực hiện định hướng (routing) mong muốn.

Sự phong phú các nguồn routing khác nhau được cung cấp để đạt được routing tự động có hiệu quả. Số kênh routing được sắp xếp theo kích cỡ của mảng; nó tăng với kích cỡ mảng. Các đầu vào và đầu ra CLB được phân bố trên tất cả 4 mặt của block, tạo ra sự linh hoạt routing. 10 TIEU LUAN MOI download : skknchat@gmail.com Có bốn loại liên kết chủ yếu, ba loại được phân biệt bởi độ dài tương đối của các đoạn của chúng: các đường dài đơn, đường dài đôi và đường dài.

Thêm vào đó, tám buffer toàn bộ chạy nhanh, mạng lưới độ lệch thấp thường sử dụng cho clock hoặc các tín hiệu điều khiển toàn bộ.3 Khối vào ra [11,12] Các khối vào/ra thường được viết tắt là IOB (input Output Block), cấu hình cung cấp giao diện giữa các chân bên ngoài và các tín hiệu logic bên trong. Mỗi IOB điều khiển một chân và có thể được xác định cho đầu vào, đầu ra hay các tín hiệu hai chiều. Hình 6 biểu diễn biểu đồ một khối vào ra. Các tín hiệu đầu vào, hai đường, được gọi là I1 và I2, mang các tín hiệu đầu vào tới mảng.

Các đầu vào cũng nối với một điện trở đầu vào cái mà có thể lập trình được như một flip – flop lật trạng thái theo sườn xung hay một mạch chốt (latch). Lựa chọn bằng cách đặt gốc thích hợp từ thư viện biểu tượng. Các đầu vào có thể được cấu hình toàn bộ cho các điểm đi vào TTL (1,2V) hoặc CMOS (2,5V) Hình 4: Cấu trúc khối vào ra. 11 TIEU LUAN MOI download : skknchat@gmail.com Hai điều chỉnh toàn bộ của điểm bắt đầu đầu vào và mức độ đầu ra là độc lập với nhau.

Có một hiện tượng trễ nhỏ khoảng 300mV. Các tín hiệu clock riêng biệt được cung cấp cho các thanh ghi đầu vào và đầu ra; các clock này có thể đảo ngược, sinh ra. Cũng như với trường hợp các thanh ghi CLB, một tín hiệu set/reset toàn bộ có thể được sử dụng để set hay xoá các thanh ghi đầu vào và đầu ra bất cứ khi nào mạng Reset tồn tại. Các đầu vào được ghi, các tín hiệu I1 và I2 thoát block có thể mang các tín hiệu đầu vào trực tiếp hay ghi lại.

Các phần tử lưu trữ đầu vào hay đầu ra trong mỗi IOB có một đầu vào có thể clock chung, cái mà qua cấu hình có thể hoạt hoá một cách riêng lẻ cho flip - flop đầu vào hay đầu ra hoặc cả hai.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ