1 / 33

LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC

LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC. GVHD : Th.s Bùi Quốc Bảo SVTH : Nguyễn Dũng Thanh Lâm 30-6-2009. GIAO TIẾP SD_CARD VÀ MÀN HÌNH VGA DÙNG NIOS II. MỤC TIÊU HOÀN THÀNH. Xây dựng hệ thống trên Kit DE2 để giao tiếp với SD CARD và đọc dữ liệu file ảnh bitmap lưu vao SRAM.

walter
Télécharger la présentation

LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC GVHD : Th.s Bùi Quốc Bảo SVTH : Nguyễn Dũng Thanh Lâm 30-6-2009 GIAO TIẾP SD_CARD VÀ MÀN HÌNH VGA DÙNG NIOS II

  2. MỤC TIÊU HOÀN THÀNH • Xây dựng hệ thống trên Kit DE2 để giao tiếp với SD CARD và đọc dữ liệu file ảnh bitmap lưu vao SRAM. • Kết quả thu được là hiển thị các file ảnh thông qua cổng VGA lên màn hình vi tính.

  3. Tổng quan • Đề tài: Giao tiếp SD_CARD và màn hình VGA dùng NIOS II. • Nội dung gồm 2 phần chính: • Xây dựng hệ thống phần cứng. • Viết chương trình đọc thẻ nhớ, xử lý file ảnh và điều khiển hệ thống

  4. Phần I Xây Dựng hệ thống phần cứng

  5. Tổng quan kết nối I II

  6. Kết nối chi tiết

  7. Danh sách các khối (1/2) • CPU_NIOS II: Điều khiển hoạt động các khối và xử lý hình ảnh. • Onchip_memory: Để chứa lệnh (code) và dữ liệu. • VGA_control: Tạo tín hiệu giao tiếp và điều khiển VGA chip. • RAM: Được dùng để chứa dữ liệu Red của hình ảnh.

  8. Danh sách các khối (2/2) • SRAM: Chứa dữ liệu ảnh gốc, ảnh đã xử lý và là bộ đệm (buffer) cho VGA chip. • SW: Đóng vai trò là các tín hiệu điều khiển. • LEDR: Hiển thị các kết quả cần kiểm tra trong các bước kiểm tra. • PLL: Tạo ra các xung clock để cấp cho hoạt động của các khối

  9. PLL • inclk0: Clock ngõ vào. Tần số 50Mhz • C0: 100Mhz cấp cho bộ nhớ RAM, và clock của VGA chip để đồng bộ dữ liệu của bộ đệm bean trong chip. • C1: 50Mhz cấp cho hoạt động của CPU. • C2: Tạo ta xung Clock 50Mhz có độ trễ pha -3ns

  10. Khối CPU

  11. Các port của hệ thống CPU • Clk: • reset_n: • out_port_from_the_Display: • in_port_to_the_KEY: • out_port_from_the_LEDR: • in_port_to_the_SW:

  12. Các port của CPU để giao tiếp với RAM • out_port_from_the_RAM_DATA_in • in_port_to_the_RAM_DATA_out • out_port_from_the_RAM_RD_ADDR • out_port_from_the_RAM_WE • out_port_from_the_RAM_WR_ADDR

  13. Các port của CPU để giao tiếp với SRAM • out_port_from_the_SRAM_ADDR • in_port_to_the_SRAM_DATA • out_port_from_the_SRAM_DATA • out_port_from_the_SRAM_WE_N

  14. Các port của CPU để giao tiếp với SDRAM • zs_addr_from_the_sdram • zs_ba_from_the_sdram • zs_cas_n_from_the_sdram • zs_cke_from_the_sdram • zs_cs_n_from_the_sdram • zs_dq_to_and_from_the_sdram • zs_dqm_from_the_sdram • zs_ras_n_from_the_sdram • zs_we_n_from_the_sdram Các Port này do Quartus tự tạo khi ta thêm bộ SDRAM_controller vào hệ thống SoPC

  15. VGA_control • Nhiệm vụ: • Đồng bộ hóa dữ liệu màu bằng các tạo ra các tín hiệu đồng bộ H_S và V_S. • Kích thước toàn màn hình là 640*480. • Tạo khung (cửa sổ) hiển thị hình ảnh. Kích thước khung 180*180. • Phát hiện VGA chip đang quét tới vùng trong cửa sổ hiển thị thì đưa ra dữ liệu ảnh • Vùng ngoài cửa sổ hiển thị đưa ra dữ liệu 0x00 để hiển thị màu đen.

  16. Cách xây dựng VGA_control • Dựa vào tín hiệu đếm theo hàng và cột để đồng bộ tín hiệu quét (sử dụng code trên trang web của altera). • Tần số sử dụng trong khối VGA: 50Mhz if(h_count>=1318 & h_count<=1510) HS<=0; else HS<=1; if(v_count<=494 & v_count>=493) VS<= else VS<=1;

  17. Cách xây dựng VGA_control • Tạo ra tín hiệu pic_en để quan sát khi nào VGA_Chip đang quét trong vùng hiển thị hình ảnh: if(h_count>=400 & h_count<798 & v_count >= 151 & v_count < 350) pic_en <= 1; else pic_en <= 0; assign color_R_t = pic_en ? color_R : 8'h00; assign color_G_t = pic_en ? color_G : 8'h00; assign color_B_t = pic_en ? color_B : 8'h00;

  18. (200; 350) (400; 350) (200; 150) (400; 150) Cách xây dựng VGA_control • Xây dựng công thức tính địa chỉ để truy cập vào các vùng buffer • VGA_addr = (200 - (v_count - 150))*200 + (h_count- 200) Khung ảnh (cửa sổ) hiển thị

  19. 0x00000 Buffer đệm cho VGA (G,B) 0x3FFFF SRAM • Chứa dữ liệu 16 bit màu B, G của ảnh .

  20. Xây dựng phần cứng để giao tiếp SRAM NIOS II SRAM_WE_N SRAM 15:0 15:0 out_port_to_the_SRAM_DQ SRAM_DQ 15:0 in_port_to_the_SRAM_DQ 17:0 SRAM_ADDR out_port_to_the_SRAM_ADDR

  21. NIOS II SRAM_WE_N SRAM 15:0 15:0 out_port_to_the_SRAM_DQ SRAM_DQ 15:0 in_port_to_the_SRAM_DQ DISPLAY 15:0 out_port_to_the_SRAM_ADDR 15:0 0 1 VGA control SRAM_ADDR 15:0 DISPLAY VGA_ADDR 9:0 G VGA Chip G 9:0 FFFF B B 0 1 G,B H_S H_S V_S V_S Sử dụng SRAM để làm bộ đệm dữ liệu cho VGA Có hình phóng to trên giấy A1

  22. Write DISPLAY = 0 SRAM_WE_N = 1 SRAM_ADDR = addr SRAM_DQ = data Read SRAM_WE_N = 0 DISPLAY = 0 Wait one clock SRAM_WE_N = 1 SRAM_WE_N = 1 SRAM_ADDR = addr Ret Wait some clock Read data from PIO SRAM_DQ Ret Lưu đồ giải thuật đọc và ghi SRAM

  23. RAM • Được xây dựng bằng chức năng Mega Wizard Plug_in manager trong Quartus II. • Cấu tạo từ các bộ nhớ bên trong FPGA (M4K).

  24. Ghi RAM Đưa địa chỉ Đọc RAM Xuất dữ liệu Đưa địa chỉ Wren = 1 Đọc dữ liệu Wait one clock RET Wren = 0 RET Đọc và ghi RAM

  25. NIOS II RAM Clk_100 clock RAM_WE wren 7:0 RAM_DATA_in data 15:0 Write_addr wraddress 7:0 RAM_DATA_out q DISPLAY 15:0 read_addr 15:0 0 1 VGA control rdaddress 15:0 DISPLAY VGA_ADDR VGA Chip 9:0 FF R R 0 1 R H_S H_S V_S V_S Sơ đồ kết nối của RAM với CPU và VGA_control

  26. Các khối còn lại • Onchip memory: được dùng để làm bộ nhớ chứa code và data cho CPU. Nhưng vì bộ nhớ này nhỏ và không đủ nên ta phải mở rộng bộ nhớ bằng SDRAM. • Để giao tiếp với SDRAM chip ta cần tạo thêm bộ SDRAM_controller • Cả hai khối Onchip_memory và SRAM_controller đều do chương trình SoPC xây dựng.

  27. Phần II Xây dựng và thực hiện giải thuật xử lý ảnh

  28. MAIN display_original() x = Sơ đồ giải thuật chính

  29. int show_ pro( int a) x = SW Giữ nguyên giá trị x = ? Thay đổi giá trị 6 1 2 4 0 3z 5 display_ original a = x return a

  30. Hiển thị ảnh trong vùng nhớ ảnh đã xử lý • Để hiển thị ảnh đã xử lý ta phải chép toàn bộ dữ liệu của phần 1 vào vùng buffer G,B và chép toàn bộ dữ liệu của phần 2 vào vùng buffer R. Sau đó cho DISPLAY = 1.

  31. Hướng phát triển đề tài • Hệ thống trên còn có thể thực hiện: • … • Do thời gian làm luận văn có hạn. Nên em chỉ có thể thực hiện được các chức năng như đã trình bày.

  32. Hạn chế của đề tài • Vì giới hạn bộ nhớ trên kit DE2 nên ta không thể thực hiện được các ảnh có kích thước lớn hơn.

  33. Thanks for your attention !

More Related