THIẾT kế IP CORE bộ điều KHIỂN CHUỘT máy TÍNH THÔNG QUA CHUẨN PS2

40 232 2
THIẾT kế IP CORE bộ điều KHIỂN CHUỘT máy TÍNH THÔNG QUA CHUẨN PS2

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Đồ án thiết kế logic số ĐỀ TÀI: THIẾT KẾ IP CORE BỘ ĐIỀU KHIỂN CHUỘT MÁY TÍNH THƠNG QUA CHUẨN PS2 Đồ án thiết kế logic số MỤC LỤC CHƯƠNG I TỔNG QUAN VỀ FPGA 1.1.GIỚI THIỆU FPGA 1.2.KIT SPARTAN 3AN 1.3.GIỚI THIỆU VỀ VHDL CHƯƠNG II: THIẾT KẾ IP CORE BỘ ĐIỀU KHIỂN CHUỘT MÁY TÍNH THƠNG QUA CHUẨN 2.1.GIỚI THIỆU VỀ CHUẨN GIAO TIẾP PS2 2.2.GIỚI THIỆU CẤU TRÚC CHUỘT CHUẨN PS2 2.3.THIẾT KẾ IP CORE BỘ ĐIỀU KHIỂN CHUỘT MÁY TÍNH THÔNG QUA CHUẨN PS2 2.3.1 GIẢN ĐỒ XUNG CỦA CỔNG PS2 2.3.2 Ý TƯỞNG THIẾT KẾ 2.3.3 SƠ ĐỒ KHỐI TRUYỀN VÀ NHẬN DỮ LIỆU .9 2.3.4.SƠ ĐỒ THUẬT TOÁN KHỐI TRUYỀN DỮ LIỆU .11 2.3.5.SƠ ĐỒ THUẬT TOÁN KHỐI NHẬN DỮ LIỆU 12 2.3.6 MƠ HÌNH THỬ NGHIỆM THIẾT KẾ IP CORE BỘ ĐIỀU KHIỂN CHUỘT PS2 .14 TÀI LIỆU THAM KHẢO: 16 PHỤ LỤC 17 Đồ án thiết kế logic số CHƯƠNG I TỔNG QUAN VỀ FPGA 1.1 Giới thiệu FPGA FPGA (Field Programable Gate Arrays) thiết bị bán dẫn bao gồm khối logic lập trình gọi "Logic Block", kết nối khả trình Các khối logic lập trình để thực chức khối logic AND, XOR, chức kết hợp phức tạp decoder phép tính tốn học Trong hầu hết kiến trúc FPGA, khối logic bao gồm phần tử nhớ Đó Flip-Flop nhớ hồn chỉnh Các kết nối khả trình cho phép khối logic nối với theo thiếtkế người xây dựng hệ thống, giống bảng mạch khả trình Một kiến trúc khác tương tự đơn giản FPGA, CPLD ( Complex Programable Logic Device ) Thực chất tiền thân FPGA Năm 1984, Ross Freeman, đồng sáng lập Xilinx phát minh FPGA FPGA CPLC bao gồm số lượng lớn phần tử logic khả trình Mật độ cổng logic (Logic Gate) CPLD nằm khoản từ vài nghìn 10 nghìn cổng Trong FPGA thơng thường chứa từ 10 nghìn vài triệu cổng Đồ án thiết kế logic số Hình 1.1 Kiến trúc FPGA FPGA ứng dụng điển hình lĩnh vực yêu cầu tốc độ đáp ứng cao như: xử lý tín hiệu số,xử lý ảnh, thị giác máy, nhận dạng giọng nói, mã hóa, mơ phỏng(emulation) FPGA đặc biệt mạnh lĩnh vực ứng dụng mà kiến trúc yêu cầu lượng lớn xử lý song song, đặc biết mã hóa giải mã FPGA sử dụng ứng dụng cần thực thi thuật toán FFT, nhân chập (convolution), thay cho vi xử lý, hay có mặt nhiều hệ thống nhúng, hệ thống viễn thông Hiện công nghệ FPGA sản xuất hỗ trợ phần mềm hãng :Xilinx, Altera, Actel, Atmel Trong Xilinx Altera hai hãng hàng đầu 1.2 Kit Spartan 3AN Hình 1.2 KIT Spartan 3AN Đồ án thiết kế logic số - Kít SPARTAN 3AN sử dụng chíp FPGA XC3S700AN tích hợp 700k cổng logic -Một số hỗ trợ kit như: + Các cổng I/O + Màn hình LCD + Cổng giao tiếp RS232,PS2,VGA + Tích hợp sẵn biến đổi ADC/DA kit + 2flash nối tiếp 16Mb + DDR2 SD RAM + Clock 50MHZ 1.3 Giới thiệu VHDL VHDL phát triển để giải khó khăn việc phát triển, thay đổi lập tài liệu cho hệ thống số VHDL ngôn ngữ độc lập không gắn với phương pháp thiết kế, mô tả hay công nghệ phần cứng Người thiết kế tự lựa chọn cơng nghệ, phương pháp thiết kế sử dụng ngôn ngữ Và đem so sánh với ngôn ngữ mô phần cứng khác ta thấy VHDL có số ưu điểm hẳn là: - Thứ tính cơng cộng: VHDL phát triển bảo trợ phủ Mỹ tiêu chuẩn IEEE VHDL hỗ trợ nhiều nhà sản xuất thiết bị nhiều nhà cung cấp công cụ thiết kế mô hệ thống - Thứ hai khả hỗ trợ nhiều công nghệ nhiều phương pháp thiết kế: VHDL cho phép thiết kế nhiều phương pháp ví dụ phương pháp thiết kế từ xuống, hay từ lên dựa vào thư viện sẵn có VHDL hỗ trợ cho nhiều loại cơng cụ xây dựng mạch sử dụng công nghệ đồng hay khơng đồng bộ, sử dụng ma trận lập trình hay sử dụng mảng ngẫu nhiên Đồ án thiết kế logic số - Thứ ba tính độc lập với cơng nghệ: VHDL hồn tồn độc lập với công nghệ chế tạo phần cứng Một mô tả hệ thống dùng VHDL thiết kế mức cổng chuyển thành tổng hợp mạch khác tuỳ thuộc công nghệ chế tạo phần cứng đời áp dụng cho hệ thống thiết kế - Thứ tư khả mô tả mở rộng: VHDL cho phép mô tả hoạt động phần cứng từ mức hệ thống số mức cổng VHDL có khả mơ tả hoạt động hệ thống nhiều mức sử dụng cú pháp chặt chẽ thống cho mức Như ta mơ thiết kế bao gồm hệ mô tả chi tiết - Thứ năm khả trao đổi kết quả: Vì VHDL tiêu chuẩn chấp nhận, nên mơ hình VHDL chạy mô tả đáp ứng tiêu chuẩn VHDL Các kết mơ tả hệ thống trao đổi nhà thiết kế sử dụng công cụ thiết kế khác tuân theo tiêu chuẩn VHDL Cũng nhóm thiết kế trao đổi mơ tả mức cao hệ thống hệ thống lớn (trong hệ thiết kế độc lập) - Thứ sáu khả hỗ trợ thiết kế mức lớn khả sử dụng lại thiết kế: VHDL phát triển ngơn ngữ lập trình bậc cao, sử dụng để thiết kế hệ thống lớn với tham gia nhóm nhiều người Bên ngơn ngữ VHDL có nhiều tính hỗ trợ việc quản lý, thử nghiệm chia sẻ thiết kế Và cho phép dùng lại phần có sẵn Đồ án thiết kế logic số CHƯƠNG II: THIẾT KẾ IP CORE BỘ ĐIỀU KHIỂN CHUỘT MÁY TÍNH THƠNG QUA CHUẨN 2.1 Giới thiệu chuẩn giao tiếp PS2 Chuẩn PS2 giao diện phần cứng dùng để kết nối bàn phím sử dụng cổng PS2 khác vào máy tính Giao diện PS2 loại đầu nối 6-pin MINI DIN (DIN - Deutsches Institut fur Normung - chuẩn giao diện phát triển Viện khoa học Định chuẩn Đức) Cổng ps2 có kết nối nguồn làm việc tốt 5V, 3,3V thiết bị cũ Một chân kết nối với đất Hai đường dùng cho kết nối, dây cho phép truyền liệu theo chuỗi nối tiếp, dây lại chứa thông tin clock xác định liệu hợp lệ nhận Thông tin truyền theo gói 11 bít, bao gồm bit start , bit liệu, bít dùng cho phép kiểm tra chẵn lẻ, bit stop Các thông tin liên lạc cổng PS2 hai chiều máy chủ gửi lệnh bàn phím chuột để thiết lập thông số định Kết nối cổng ps2 kết nối song cơng Host gửi lệnh xuống chuột bàn phím cài đặt tham số Giao diện vật lý cho cổng PS2 Hình 2.1 Giao diện vật lý cổng PS2 Đồ án thiết kế logic số Cổng giao tiếp PS2 có tất chân đánh số từ đến Chân số tương ứng GND nguồn Nguồn sử dụng 5V thực tế với thiết kế FPGA sử dụng mức điện áp 3.3V Nguồn +5V tạo PC mass GND kết nối với mass PC Cả bàn phím máy tính có điện trở kéo lên cho Clock Data lên nguồn 5V Chân chân tín hiệu đồng CLK Còn chân chân liệu DATA (PS2D) cho phép truyền liệu theo chuỗi nối tiếp.Chân 2,6 hai chân dự trữ 2.2 Giới thiệu cấu trúc chuột chuẩn PS2 Hình 2.2 Định dạng gói liệu chuột PS2 X8……,X0 : Các điểm trục tọa độ X Xv : Điểm tràn trục tọa độ X Y8…….,Y0 : Các điểm trục tọa độ Y Yv : Điểm tràn trục tạo độ Y L : Trạng thái phím bấm trái Trạng thái ‘1’ chuột trái bấm R : Trạng thái phím bấm phải Trạng thái ‘1’ chuột phải bấm Đồ án thiết kế logic số M : Trạng thái phím lăn , lật trang Trạng thái ‘1’ phím bấm phải bấm 2.3 Thiết kế IP core điều khiển chuột máy tính thơng qua chuẩn PS2 2.3.1 Giản đồ xung cổng PS2 Hình 2.3 Giản đồ xung cổng PS2 2.3.2 Ý tưởng thiết kế Sơ đồ khối hệ thống bao gồm : Đồ án thiết kế logic số Hình 2.4.Sơ đồ khối hệ thống  Khối MOUSE_LED: có chức thị trạng thái phím bấm vị trí chuột lên LED đơn  Khối PS2_MOUSE: khối xác định phím bấm vị trí chuột  Khối PS2_RXTX: Khối có chức liên kết khối truyền liệu (ps2_tx) khối nhận liệu (ps2_rx)  Khối PS2_TX: Khối truyền đữ liệu  Khối PS2_RX: Khối nhận liệu 2.3.3 Sơ đồ khối truyền nhận liệu Đồ án thiết kế logic số x_next(7 downto 0) if rx_done_tick='1' then state_next ps2c, tx_idle=>tx_idle, tx_done_tick=>tx_done_tick); ps2_rx_unit: entity work.ps2_rx(behavioral) port map (clk=>clk, reset=>reset, rx_en=>tx_idle, ps2d=>ps2d, ps2c=>ps2c, rx_done_tick=>rx_done_tick, dout=> dout); end Behavioral; Code PS2_tx Đồ án thiết kế logic số Company: Engineer: - Create Date: 23:21:38 04/01/2013 Design Name: Module Name: ps2_tx - Behavioral Project Name: Target Devices: Tool versions: Description: - Dependencies: - Revision: Revision 0.01 - File Created Additional Comments: library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.NUMERIC_STD.ALL; Uncomment the following library declaration if using arithmetic functions with Signed or Unsigned values use IEEE.NUMERIC_STD.ALL; Đồ án thiết kế logic số Uncomment the following library declaration if instantiating any Xilinx primitives in this code library UNISIM; use UNISIM.VComponents.all; entity ps2_tx is Port ( clk : in STD_LOGIC; reset : in STD_LOGIC; din : in STD_LOGIC_VECTOR(7 DOWNTO 0); wr_ps2 : in STD_LOGIC; ps2c : inout STD_LOGIC; ps2d : inout STD_LOGIC; tx_idle : out STD_LOGIC; tx_done_tick : out STD_LOGIC); end ps2_tx; architecture Behavioral of ps2_tx is type statetype is (idle, rts, start, data, stop); signal state_reg, state_next: statetype; signal filter_reg, filter_next: std_logic_vector(7 downto 0); signal f_ps2c_reg, f_ps2c_next : std_logic; signal fall_edge: std_logic; signal b_reg ,b_next: std_logic_vector(8 downto 0) ; signal c_reg ,c_next : unsigned(12 downto 0); signal n_reg ,n_next : unsigned(3 downto 0) ; Đồ án thiết kế logic số signal par: std_logic; signal ps2c_out, ps2d_out: std_logic; signal tri_c, tri_d: std_logic; begin filter and falling-edge tick generation for ps2c process (clk, reset) begin if reset='1' then filter_reg '0'); f_ps2c_reg

Ngày đăng: 04/05/2019, 20:59

Từ khóa liên quan

Mục lục

  • CHƯƠNG I. TỔNG QUAN VỀ FPGA

  • 1.1. Giới thiệu FPGA

    • 1.2. Kit Spartan 3AN

    • 1.3. Giới thiệu về VHDL

    • CHƯƠNG II: THIẾT KẾ IP CORE BỘ ĐIỀU KHIỂN CHUỘT MÁY TÍNH THÔNG QUA CHUẨN

    • 2.1. Giới thiệu về chuẩn giao tiếp PS2

    • 2.2. Giới thiệu cấu trúc chuột chuẩn PS2

      • 2.3. Thiết kế IP core bộ điều khiển chuột máy tính thông qua chuẩn PS2

      • 2.3.1. Giản đồ xung của cổng PS2.

      • Hình 2.3. Giản đồ xung cổng PS2

      • 2.3.2. Ý tưởng thiết kế.

      • 2.3.3. Sơ đồ khối truyền và nhận dữ liệu.

      • 2.3.4. Sơ đồ thuật toán khối truyền dữ liệu

      • 2.3.5. Sơ đồ thuật toán khối nhận dữ liệu.

      • 2.3.6. Mô hình thử nghiệm thiết kế IP core bộ điều khiển chuột PS2.

      • Tài liệu tham khảo:

      • PHỤ LỤC

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan