Tổng quan về FPGA và ứng dụng trong thiết kế công cụ xử lý tín hiệu

MỤC LỤC

Các công cụ thiết kế

Những đặc điểm cơ bản của XtremeDSP Development Kit-IV 1 Giới thiệu chung

    XtremeDSP Development Kit-IV là bộ KIT có khả năng cung cấp một nền tảng phát triển cao cho công Nghệ FPGA Virtex-IV Pro.Hai bộ ADC và DAC có tốc độ cao cho phép người dùng có thể lập trình nhằm xử lý các ứng dụng như Software Defined Radio, 3G Wireless, Networking, HDTV hoặc hình ảnh Video. Module BenADDA DIME- sử dụng trong XtremeDSP Development Kit-IV có hai kênh vào tương tự, mỗi kênh có dữ liệu và tín hiệu điều khiển độc lập tới FPGA.Hai ADC (AD6645) cho phép thực hiện hai thiết lập dữ liệu với độ rộng 14 bit.Tín hiệu đưa vào ADC và tín hiệu ra thông qua chuẩn kết nối MCX. Module BenADDA DIME-I sử dụng trong XtremeDSP Development Kit-IV có hai kênh lối ra tương tự, mỗi kênh có dữ liệu và tín hiệu điều khiển độc lâp tới FPGA.Hai bộ DAC (AD9772A )cung cấp hai đường dữ liệu mỗi đường 14 bit.Tín hiệu vào và tín hiệu ra thông qua kết qua kết nối MCX.

    Hai bộ nhớ ZBT SRAM trên bộ KIT có thể được clock độc lập thông qua việc chèn thêm tín hiệu clock phản hồi.Mỗi bộ nhớ có một tín hiệu có thể được hiệu chỉnh trong FPGA đảm bảo cho clock của ZBT SRAM và chân phản hồi có clock giống hệt nhau với độ sai khác nhỏ nhất. XtremeDSP Development Kit-IV có một số “user-definable” và các LED hiển thị cho phép người dùng kiểm tra trạng thái oạt động của bộ KIT.Có các LED kiểm tra các cấu hình người dùng và các LED hiển thị trạng thái hệ thống, cấu hình các giao diện và nguồn (Interface LEDs). Hệ thống phần mềm ISE của Xilinx là một môi trường thiết kế tích hợp bao gồm thiết kế chương trình, mô phỏng và thực hiện các thiết kế trên các thiết bị FPGA hay CPLD.ISE có thể tham gia vào việc điều khiển mọi giai đoạn trong quy trình thiết kế.Thông qua giao diện của ISE, người dùng có thể can thiệp vào các thiết kế và sử dụng các công cụ thực hiện thiết kế.

    Việc lập trình 1 bộ FPGA bằng System Generator bao gồm các bước sau: mô phỏng thiết kế, tạo ra 1 bản thiết kế theo ngôn ngữ bậc thấp có thể đưa các thiết bị phần cứng như FPGA từ thiết kế mô phỏng này,sau đó đưa bản thiết kế mới tạo ra này vào trong file cấu hình của FPGA gọi là bitsream. System Generator đã xây dựng khoảng hơn 90 khối xử lí tín hiệu số (DSP) để hỗ trợ người dùng trong việc mô phỏng các thiết kế.Các khối này gồm các khối DSP phổ biến như khối cộng, nhân, thanh ghi. AccelDSP bao gồm các thuật toán mạnh có thể chuyển các thiết kế dùng dấu chấm động (floating-point) trong Matlab sang dạng dấu chấm cố định (fix-point) là loại hay được dùng trong System Generator.

    Điều này có lợi ích rất lớn đối với cả việc thiết kế phần mềm lẫn phần cứng, giúp cho các nhà thiết kế có thể tận dụng tối đa các tài nguyên trong FPGA (lên đến 550 bộ nhân trong thiết bị Virtex 5). Tuy nhiên các kỹ sư thiết kế vẫn muốn theo xem xét 1 cách chi tiết việc thiết kế của mình chạy trong phần cứng như thế nào.System-Generator cung cấp giao diện mô phỏng Cosimulation giúp kết hợp chặt chẽ và trực tiếp việc chạy thực tế trên FPGA vào mô phỏng simulink. Để thực hiện mô phỏng Cosimulation, trước hết ta đưa thiết kế vào bitstream, sau đó System Generator tự động hợp nhất cấu hình phần cứng FPGA với bitstream trở lại thiết kế mô phỏng gọi là khối run-time.

    System Generator cung cấp 1 môi trường thống nhất cho các thiết kế DSP FPGAs,cho phép các thành phần nhỏ được viết bởi các ngôn ngữ khác nhau như RTL, Simulink, Matlab và C/C++ có thể làm việc cùng nhau trong cùng 1 thiết kế. Tóm lại, việc làm chủ được những công cụ rất mạnh như các sản phẩm FPGA của Xilinx và các phần mềm chuyên dụng là một lợi thế lớn cho các nhà thiết kế khi đưa những ý tưởng của mình vào các thực tế.

    Hình 2.1. Giao diện ngoài của XtremeDSP Development Kit-IV
    Hình 2.1. Giao diện ngoài của XtremeDSP Development Kit-IV

    Giới thiệu mô hình Software Defined Radio cho hệ đo thử kênh MIMO

    • Mô hình Software Defined Radio cho hệ đo thử kênh MIMO

      Vào các năm 1984, 1986 Jack Winters và Jack Salz tại phòng thí nghiệm Bell Labs đã công bố một số bài viết về một số ứng dụng dùng kỹ thuật tạo búp sóng, được sử dụng trong hệ MIMO sau này. Đến năm 1994 họ được chính phủ Hoa Kỳ cấp bằng sáng chế cho những phát minh sử dụng hợp kênh không gian vào các ứng dụng truyền thông vô tuyến. Trong tương lai các ứng dụng dựa trên kỹ thuật MIMO hứa hẹn sẽ mang lại những hiệu quả to lớn trong lĩnh vực truyền thông cũng như đáp ứng được những yêu cầu ngày càng cao của người sử dụng.

      Xét hệ thống SIMO gồm 1 anten phát và 2 anten thu, ở tại phía thu 2 anten sẽ nhận được những tín hiệu khác nhau s1 và s2 của cùng tín hiệu s được truyền đi. Thông tin trạng thái kênh truyền được biết một cách chính xác tại nơi thu, thuật toán xử lí tín hiệu có thể được áp dụng để kết hợp 2 tín hiệu s1 và s2 vì thế mà công suất tại nơi thu có thể được cải thiện. Hệ số dải của một hệ thống MIMO phụ thuộc vào số lượng anten phát và anten thu và nó là một hàm số của giá trị riêng lớn nhất trong ma trận kênh truyền.

      Một nhận xét chính xác rằng công suất tín hiệu truyền trên kênh truyền không dây thay đổi với các thông số về thời gian, tần số và không gian. Ý tưởng cơ sở bên cạnh phân tập là các phiên bản thu được của cùng một tín hiệu trên các đường liên kết riêng biệt (còn được coi là nhánh phân tập). Nhiễu giao thoa trong hệ thống không dây giống như mạng điện thoại tế bào, nguyên lí cơ bản là việc sử dụng lại tần số được tận dụng để tăng dung lượng hệ thống.

      Việc giảm nhiễu giao thoa thường đòi hỏi kiến thức về kênh truyền không gian sử dụng phân chia bởi tín hiệu mong muốn và tín hiệu không mong muốn. Software Defined Radio (SDR) là một hệ truyền thông vô tuyến trong đó các thành phần đặc trưng trên phần cứng (Bộ lọc, bộ diều chế/giải điều chế, .v.v…) đều được sử dụng thông qua các phần mềm trên máy tính hoặc các thiết bị kết nối với máy tính. Khi đã xác định được ma trận kênh, chúng ta hoàn toàn có thể tính chính xác hạng của ma trận kênh, từ đó tính được dung năng kênh truyền.

      Hình 3.2. Hệ số dải
      Hình 3.2. Hệ số dải

      Kết quả thực nghiệm

        Mô hình bên phát -Walsh code generator: bộ phát chuỗi Walsh 8 bit, tốc độ 800k -Data generator: bộ phát dữ liệu tốc độ 100k. Tín hiệu cần truyền được nhân với tín hiệu Walsh để tương quan ở bên thu. Tín hiệu sau khi nhân sẽ được đưa lên tần số trung gian IF (12,5 MHz) bằng cách nhân với tín hiệu IF lấy từ bộ IF Generator.

        Sau đó tín hiệu này được đưa qua bộ DAC2 trở thành tín hiệu tương tự (Signal out) và truyền đi. Tín hiệu này được nhân lần lượt với bộ phát sóng sin và cos có tần số IF. Hai tín hiệu sau khi nhân được đưa qua bộ lọc thông thấp để lọc hết các tần số cao và cho các tín hiệu băng cơ sở.

        Hiện nay kỹ thuật MIMO vẫn thu hút đuợc sự quan tâm của các nhà khoa học, các viện nghiên cứu, các trường đại học nhằm khắc phục các yếu điểm của truyền thông vô tuyến cũng như hướng tới một môi trường truyền dẫn với dung lượng khổng lồ mà hệ thống nhiều anten trong kênh truyền MIMO có thể mang lại. Trong tương lai, kỹ thuật này hứa hẹn sẽ mở ra một triển vọng mới cho các thiết bị không dây với đường truyền tốc độ cao khi các ứng dụng của MIMO đi vào thực tế. Vì vậy, việc tiến hành đo kênh MIMO trong môi trường indoor là một việc cần thiết để có thể đánh giá được kênh truyền.

        Do đây là một bài toán phức tạp, đòi hỏi những kiến thức vững chắc về lý thuyết điều chế cũng như các kỹ thuật xử lý tín hiệu nên việc sử dụng FPGA để thiết kế mô hình đo kênh là một giải pháp hợp lý. Đặc biệt với điều kiện phòng thí nghiệm được sở hữu các bộ KIT tốc độ cao của Xilinx và các công cụ xử lý rất mạnh là một lợi thế cho các nhà thiết kế. Trong thời gian tới, nhóm nghiên cứu sẽ tiếp tục phân tích các kỹ thuật sử dụng trong hệ MIMO, đồng thời làm chủ FPGA, tiến tới sử dụng FPGA để hoàn thiện mô hình thiết kế hệ Testbed cho kênh MIMO 4 x 4 trong điều kiện indoor.

        Hình 4.1. Mô hình bên phát
        Hình 4.1. Mô hình bên phát