Tải bản đầy đủ (.ppt) (100 trang)

Bài giảng Thiết kế nhờ máy tính - Nguyễn Thành Kiên

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (586.05 KB, 100 trang )

Thiết kế nhờ máy tính
Nguyễn Thành Kiên
Bộ mơn Kỹ thuật Máy tính
Khoa Cơng nghệ thơng tin, ĐH
BKHN


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:



Copyright © by N.T.K - 8/2008


Yêu cầu môn học


Tham gia >75% số giờ học.





Nghỉ ≥ 5 buổi => Học lại.
Nghỉ ≥ 3 buổi => Không thi lần 1.

Cách tính điểm:




Bài kiểm tra giữa 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.














1. Giới thiệu VHDL.
2. Cấu trúc code.
3. Các kiểu dữ liệu.
4. Các phép tốn và thuộc tính.
5. Code song song/Code tuần tự.
6. Tín hiệu và biến.
7. Máy hữu hạn trạng thái.
8. Phương pháp thiết kế đa cấp
(Packages,Components,Subprogram)
9. Attibutes & Configurations.
10. Tổng hợp mã VHDL.

II. Thiết kế CPU.





1. Nguyên tắc thiết kế CPU.
2. Các thành phần của CPU.
3. Tối ưu hóa, mơ phỏng, tổng hợp và 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.













1. Giới thiệu VHDL.
2. Cấu trúc code.
3. Các kiểu dữ liệu.
4. Các phép tốn và thuộc tính.

5. Code song song/Code tuần tự.
6. Tín hiệu và biến.
7. Máy hữu hạn trạng thái.
8. Phương pháp thiết kế đa cấp (Packages,
Components, Subprogram).
9. Attibutes & Configurations.

II. Thiết kế CPU.
Copyright © by N.T.K - 8/2008


1. Giới thiệu ngơn ngữ
VHDL.
Phương
pháp
thiết kế
bằng HDL

Phương
pháp
thiết kế
truyền
thống

Copyright © by N.T.K - 8/2008


1. Giới thiệu ngơn ngữ
VHDL.



VHDL là 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 do Bộ QP Mỹ phát triển từ thập niên 70.
Dựa trên ngơn ngữ lập trình ADA, nhằm tạo ra tài
liệu mô tả hoạt động của các mạch điện tử.




1987 được IEEE chuẩn hóa trong IEEE 1076-1987.
1993 hoàn thiện lại thành IEEE 1076-1993.
2002 giải quyết vấn đề protected types=>IEEE 10762002

Copyright © by N.T.K - 8/2008


1. Giới thiệu ngôn ngữ
VHDL.



VHDL là chuẩn độc lập mô tả hệ thống:










Các nhà phát triển hệ thống dựa trên VHDL để mô
tả, thiết kế hệ thống.
Các phần mềm mô phỏng có thể thực hiện mơ
phỏng hoạt động của hệ thống mơ tả.
Các phần mềm tổng hợp có thể thực hiện tổng
hợp sinh ra mạch thực để thực hiện hệ thống.
Mạch sau khi tổng hợp có thể được nạp xuống chip
để thực hiện chức năng mô tả.

Chức năng: mô tả hoạt động của các hệ thống
hoặc mạch điện tử nhằm thực hiện các hệ
thống hoặc mạch này trên linh kiện thực.
Copyright © by N.T.K - 8/2008


1. Giới thiệu ngôn ngữ
VHDL.



Ưu điểm của VHDL:





Cho phép hoạt động của hệ thống được mô
tả (modeled) và kiểm thử (simulated) trước
khi các công cụ tổng hợp “dịch” thiết kế
sang phần cứng thực tế (gates and wires).
Cho phép mô tả hệ thống song song.
Khi các mơ hình VHDL được “dịch” sang
“gates and wires” thì nó có thể được nạp lên
phần cứng CPLD và FPGA để thực thi.

Copyright © by N.T.K - 8/2008


1. Giới thiệu ngơn ngữ
VHDL.


Hai ứng dụng chính của VHDL là:


PLD (Programmable Logic Device):






CPLD (Complex PLD)
FPGA (Field Programmable Gate Array).

ASIC (Application-Specific IC)

Copyright © by N.T.K - 8/2008


Quy trình thiết kế mạch dựa trên
VHDL

Copyright © by N.T.K - 8/2008


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


Bộ công cụ của nhà sản xuất chip:






Quartus/Maxplus => tổng hợp VHDL code
lên chip CPLD/FPGA của Altera.
ISE => tổng hợp VHDL code lên chip
CPLD/FPGA của Xilinx.


Một số công cụ của các hãng thứ ba:





ActiveHDL
Leonardo Spectrum (Mentor Graphics).
Synplify (Synplicity).
ModelSim (Mentor Graphics).
Copyright © by N.T.K - 8/2008


Một ví dụ VHDL đơn giản

Copyright © by N.T.K - 8/2008


Một ví dụ VHDL đơn giản

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.














1. Giới thiệu VHDL.
2. Cấu trúc code.
3. Các kiểu dữ liệu.
4. Các phép tốn và thuộc tính.
5. Code song song/Code tuần tự.
6. Tín hiệu và biến.
7. Máy hữu hạn trạng thái.
8. Phương pháp thiết kế đa cấp (Packages,
Components, Subprogram).
9. Attibutes & Configurations.

II. Thiết kế CPU.
Copyright © by N.T.K - 8/2008


Code structure
library IEEE;
use IEEE.std_logic_1164.all;
ENTITY full_adder IS

PORT (a,b,cin: in bit;
s,cout:out bit);
END full_adder;
Architecture dataflow of full_adder is
begin
s <= a xor b xor cin;
cout <= (a and b) or (a and
cin)
or (b and cin);
end dataflow;
Copyright © by N.T.K - 8/2008


Cấu trúc code




Thư viện LIBRARY
ENTITY
ARCHITECTURE

Copyright © by N.T.K - 8/2008


Thư viện LIBRARY


A LIBRARY là một
tập các đoạn mã

thường được sử
dụng. Đặt các
đoạn mã thường
sử dụng vào thư
viện cho phép
chúng có thể được
tái sử dụng hoặc
chia sẻ giữa các
thiết kế khác
nhau.
Copyright © by N.T.K - 8/2008


Thư viện LIBRARY


Khai báo thư viện:

Copyright © by N.T.K - 8/2008


Thư viện LIBRARY


Các thư viện thường sử dụng:






ieee.std_logic_1164 (from the ieee
library),
standard (from the std library), and
work
(work
LIBRARY
ieee; library).
-- A semi-colon (;) indicates
USE ieee.std_logic_1164.all; -- the end of a statement
or
LIBRARY std;
USE std.standard.all;
acomment.

-- declaration, while a double
-- dash (--) indicates

LIBRARY work;
Copyright © by N.T.K - 8/2008


Thư viện LIBRARY


std_logic_1164




std





Gói của thư viện IEEE hỗ trợ multi-level
logic.
Gói thư viện tài nguyên (kiểu dữ liệu, text
IO…) cho môi trường thiết kế VHDL.

work


Gói thư viện chứa các thiết kế của người
dùng mới tạo ra.
Copyright © by N.T.K - 8/2008


Thư viện LIBRARY


Thư viện IEEE:


std_logic_1164




std_logic_arith





Thực hiện các phép toán số học và so sánh.

std_logic_signed




std_logic (8 mức logic),std_ulogic (9 mức logic)

Thực hiện các phép toán với kiểu DL
std_logic_vector, dữ liệu coi là có dấu

std_logic_unsigned


Thực hiện các phép tốn với kiểu DL
std_logic_vector, dữ liệu coi là khơng dấu.
Copyright © by N.T.K - 8/2008


Cấu trúc code




Thư viện LIBRARY
ENTITY

ARCHITECTURE

Copyright © by N.T.K - 8/2008


×