Thiết kế nhờ máy tính Tài liệu tham khảo Text Book: Circuit Design with VHDL, Volnei A.Pedroni, MIT press VHDL Programming by Examples, Douglas L.Perry, McGraw Hill Reference Books: 1076 IEEE Standard Vhdl Language Reference Manual 2002, IEEE Computer Society Microprocessor Design Principles and Practices with VHDL, Enoch O Hwang HDL Chip Design- A Practical Guide for Designing, Synthesizing and Simulating ASICs and FPGAs using VHDL or Verilog, Douglas J.Smith Copyright © by N.T.K - 8/2008 Phần mềm học tập Active-HDL 7.1.sp2 Quartus (for Altera FPGAs) ISE (for Xilinx FPGAs) www.opencores.org Copyright © by N.T.K - 8/2008 Giảng viên Nguyễn Thành Kiên Giảng viên Bộ môn Kỹ thuật Máy tính Khoa CNTT, ĐHBKHN Mobile: +84983588135 Email: kiennt-fit@mail.hut.edu.vn Copyright © by N.T.K - 8/2008 Yêu cầu môn học Tham gia >75% số học Nghỉ ≥ buổi => Học lại Nghỉ ≥ buổi => Khơng thi lần Cách tính điểm: Bài kiểm tra kỳ: 20% Bài tập lớn: 20% Bài kiểm tra cuối kỳ: 60% Copyright © by N.T.K - 8/2008 Nội dung mơn học I Thiết kế mạch với ngôn ngữ VHDL Giới thiệu VHDL Cấu trúc code Các kiểu liệu Các phép tốn thuộc tính Code song song/Code Tín hiệu biến Máy hữu hạn trạng thái Phương pháp thiết kế đa cấp (Packages,Components,Subprogram) Attibutes & Configurations 10 Tổng hợp mã VHDL II Thiết kế CPU Nguyên tắc thiết kế CPU Các thành phần CPU Tối ưu hóa, mơ phỏng, tổng hợp triển khai CPU Copyright © by N.T.K - 8/2008 Nội dung môn học I Thiết kế mạch với ngôn ngữ VHDL Giới thiệu VHDL Cấu trúc code Các kiểu liệu Các phép tốn thuộc tính Code song song/Code Tín hiệu biến Máy hữu hạn trạng thái Phương pháp thiết kế đa cấp (Packages, Components, Subprogram) Attibutes & Configurations II Thiết kế CPU Copyright © by N.T.K - 8/2008 Giới thiệu ngôn ngữ VHDL Phương pháp thiết kế HDL Phương pháp thiết kế truyền thống Copyright © by N.T.K - 8/2008 Giới thiệu ngơn ngữ VHDL VHDL gì? Một ngôn ngữ mô tả phần cứng: VHDL - VHSIC Hardware Description Language VHSIC - Very High Speed Integrated Circuits Là chuẩn Bộ QP Mỹ phát triển từ thập niên 70 Dựa ngôn ngữ lập trình ADA, nhằm tạo tài liệu mơ tả hoạt động mạch điện tử 1987 IEEE chuẩn hóa IEEE 1076-1987 1993 hồn thiện lại thành IEEE 1076-1993 2002 giải vấn đề protected types=>IEEE 10762002 Copyright © by N.T.K - 8/2008 Giới thiệu ngôn ngữ VHDL VHDL chuẩn độc lập mô tả hệ thống: Các nhà phát triển hệ thống dựa VHDL để mô tả, thiết kế hệ thống Các phần mềm mô thực mơ hoạt động hệ thống mơ tả Các phần mềm tổng hợp thực tổng hợp sinh mạch thực để thực hệ thống Mạch sau tổng hợp nạp xuống chip để thực chức mô tả Chức năng: mô tả hoạt động hệ thống mạch điện tử nhằm thực hệ thống mạch linh kiện thực Copyright © by N.T.K - 8/2008 Kiểu liệu File Các file bao gồm dãy kiểu liệu (có thể INTEGER, record…) Cuối file đánh dấu kết thúc ký tự “End of file” Copyright © by N.T.K - 8/2008 Kiểu liệu File Các thao tác thực với file: READ (file, data)Procedure WRITE (file, data)Procedure ENDFILE (file)Function, returns boolean Copyright © by N.T.K - 8/2008 Kiểu liệu File Khai báo kiểu file: TYPE int_file IS FILE OF INTEGER; Khai báo đối tượng file: FILE myfile : int_file IS IN “/test/data_file” Copyright © by N.T.K - 8/2008 Ví dụ tru y cập file LIBRARY IEEE; USE IEEE.std_logic_1164.ALL; ENTITY rom IS PORT(addr : IN INTEGER; cs : IN std_logic; data : OUT INTEGER); END rom; ARCHITECTURE rom OF rom IS BEGIN PROCESS(addr, cs) VARIABLE rom_init : BOOLEAN := FALSE; line TYPE rom_data_file_t IS FILE OF INTEGER; line FILE rom_data_file : rom_data_file_t IS IN “/dlp/test1.dat”; line TYPE dtype IS ARRAY(0 TO 63) OF INTEGER; VARIABLE rom_data : dtype; line VARIABLE i : INTEGER := 0; line BEGIN IF (rom_init = false) THEN line WHILE NOT ENDFILE(rom_data_file) line AND (i < 64) LOOP READ(rom_data_file, rom_data(i)); line i := i + 1; line END LOOP; rom_init := true; line 10 END IF; IF (cs = ‘1’) THEN line 11 data +10 điểm vào thi Địa điểm: môn KTMT C1-322 Thời gian: 8h – 17h Y/c: Mang slide + Mã nguồn + Tài liệu TK Khi báo cáo phải demo chương trình (chạy mơ phỏng) Nếu demo phức tạp, tự đem máy tính Copyright © by N.T.K - 8/2008 ... thuộc tính Code song song/Code Tín hiệu biến Máy hữu hạn trạng thái Phương pháp thiết kế đa cấp (Packages,Components,Subprogram) Attibutes & Configurations 10 Tổng hợp mã VHDL II Thiết kế CPU... phép tốn thuộc tính Code song song/Code Tín hiệu biến Máy hữu hạn trạng thái Phương pháp thiết kế đa cấp (Packages, Components, Subprogram) Attibutes & Configurations II Thiết kế CPU Copyright... I Thiết kế mạch với ngôn ngữ VHDL Giới thiệu VHDL Cấu trúc code Các kiểu liệu Các phép tốn thuộc tính Code song song/Code Tín hiệu biến Máy hữu hạn trạng thái Phương pháp thiết