You are on page 1of 45

BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

BÀI THÍ NGHIỆM 0


GIỚI THIỆU

LỜI MỞ ĐẦU

Thí nghiệm Kỹ thuật số giúp cho sinh viên vận dụng các lý thuyết đã học để áp dụng
vào trong thực hành. Mỗi bài thí nghiệm kỹ thuật số bao gồm hai phần. Phần I: Yêu cầu
sinh viên thực hiện khảo sát một số IC cơ bản, và áp dụng thiết kế một số chức năng theo
yêu cầu của mỗi bài thí nghiệm. Phần II: yêu cầu sinh viên sử dụng ngôn ngữ VHDL để
viết chương trình thực hiện một số chức năng tùy vào từng bài thí nghiệm. Thí nghiệm kỹ
thuật số được chia làm 5 bài bao gồm 4 bài thí nghiệm và 1 bài cộng thêm cụ thể như sau:

- Bài thí nghiệm 1: Các cổng Logic cơ bản.


- Bài thí nghiệm 2: Các IC chức năng cơ bản.
- Bài thí nghiệm 3: Thiết kế hệ tổ hợp.
- Bài thí nghiệm 4: Thiết kế hệ tuần tự cơ bản.
- Bài thí nghiệm 5: Thiết kế đồng hồ số (Bonus).

Tuy nghiên để làm được các bài thí nghiệm hiệu quả nhất, sinh viên bắt buộc phải
hoàn thành các bài Pre-Lab trước khi đến lớp.

MỤC TIÊU
Ø Nắm được cách sử dụng Quatus II và phần phềm mô phỏng Proteus.

CHUẨN BỊ
Ø Cài đặt phần mềm Quatus II 13.0sp1 và phần mềm mô phỏng Proteus. (Hướng dẫn cách cài
đặt sinh viên xem thêm tại phụ lục I và II)

HƯỚNG DẪN SỬ DỤNG PHẦN MỀM PROTEUS

Các bước thực hiện:

Bước 1: Tạo project, chuẩn bị tên các linh kiện cần dùng cho bài thí nghiệm.

Bước 2: Lấy các linh kiện từ thư viện của Proteus.

Bước 3: Đưa linh kiện ra màn hình thiết kế, bố trí, sắp xếp lại linh kiện cho hợp lý và
nối dây.

Bộ Môn Điện Tử Page | 1


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Bước 4: Kiểm tra sơ đồ nguyên lý và tiến hành mô phỏng.

I. BÀI THỬ NGHIỆM MẪU LÀM QUEN PHẦN MỀM PROTEUS

Đề bài: Thiết kế mạch để khảo sát cổng NOT

1. Tạo project, chuẩn bị tên các linh kiện cần dùng cho bài thí nghiệm

Sau khi mở phần mềm Proteus, sinh viên sẽ tạo một (project) cho riêng mình. Sau
đây là từng bước để tạo một project:

• Bước 1: Trên bảng chọn để bắt đầu quá trình tạo project.

Hình 1: Tạo một project mới cho Proteus

• Bước 2: Đặt tên project và thiết lập đường dẫn đến thư mục làm việc của project.

Trong bước này sinh viên có thể đặt tên cho project của mình, và thiết lập đường dẫn
đến thư mục làm việc của project.

Trong hình bên dưới thiết lập project tên là “test01” và đường dẫn đến thu mục làm
việc của project là “C:\Users\Admin\Documents”. Sinh viên hoàn toàn có thể thay đổi thiết
lập này nếu muốn.

Bộ Môn Điện Tử Page | 2


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Hình 2: Đặt tên và tạo đường dẫn cho một project mới của Proteus

Sau đó nhấn để tiếp tục sau khi thiết lập đường dẫn và tên project.

• Bước 3: Chọn kích thước cho bảng vẽ.

Trong bước này chúng ta có thể chọn được kích thước cho bảng vẽ của mình, mặc
định của Proteus là bảng vẽ DEFAULT như hình bên dưới (sinh viên có thể tùy chọn kích
thước khác nếu muốn).

Hình 3: Tạo kích thước bản vẽ của Proteus

• Bước 4: Tạo PCB Layout.

Sau đó nhấn để tiếp tục đến phần tạo PCB Layout. Do mục đích của chúng
ta chỉ là mô phỏng nên sinh viên có thể bỏ qua bước tạo này bằng cách chọn phần “Do not

Bộ Môn Điện Tử Page | 3


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

create a PCB layout” và nhấn để tiếp tục.

Hình 4: tạo PCB Layout cho một project mới của Proteus

Ở phần Firmware chúng ta chọn ô “No Firmware Project” để bỏ qua phần này và
nhấn , bởi vì chúng ta không sử dụng bất kì Firmware nào trong các bài thử nghiệm.

Hình 5: tạo Firmware Project cho Proteus

• Bước 5: Kiểm tra bảng tóm tắt và hoàn tất tạo project.

Đến đây một giao diện tóm tắt về thông tin của project xuất hiện như hình bên dưới,
nhấn để hoàn thành quá trình.

Bộ Môn Điện Tử Page | 4


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Hình 6: Bảng tóm tắt thông tin Project của Proteus.

Đến đây một giao diện tóm tắt về thông tin của project xuất hiện như hình bên dưới,
nhấn để hoàn thành quá trình.

Sau khi chúng ta hoàn tất tạo một project, Proteus sẽ hiển thị giao diện để người dùng
có thể thiết kế bảng mạch của mình:

Hình 7: giao diện thiết kế của Proteus.

2. Lấy các linh kiện từ thư viện của Proteus


• Bước 1: Mở cửa sổ thư viện linh kiện.

Để chọn mở thư viện linh kiện của Proteus, đầu tiên chúng ta nhấn vào nút

Bộ Môn Điện Tử Page | 5


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

(Component Mode). Sau đó nhấn vào biểu tượng để mở thư viện linh kiện.

Hình 8: Cách mở thư viện linh kiện của Proteus.

Ngoài ra, sinh viên cũng có thể mở nhanh thư viện linh kiện của Proteus bằng cách
nhấn phím “P” trên bàn phím.

• Bước 2: Tìm kiếm linh kiện trong thư viện của Proteus.

Khi thư viện được mở ra, một cửa sổ sẽ xuất hiện như sau:

Hình 9: Thư viện linh kiện Proteus.

Bộ Môn Điện Tử Page | 6


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Trong đó:

Keywords: Tên linh kiện cần tìm kiếm.

Category và Sub-category: chứa các thư viện linh kiện trong chương trình Proteus.

Results: hiển thị các linh kiện khi được chọn trong thư viện.

Schematic Review: hiển thị hình dạng của linh kiện.

PCB Preview: hiển thị sơ đồ chân PCB của linh kiện.

Trong cửa sổ Keywords, sinh viên điền tên linh kiện mà bài thí nghiệm yêu cầu, từ
đó kết quả sẽ được hiện ra ở cửa sổ Results.

Ví dụ: Trong bài thí nghiệm của chúng ta cần ít nhất ba linh kiện để khảo sát bao
gồm: 1 cổng NOT 74LS04, một cổng trạng thái ngõ vào (LOGICSTATE) và 1 cổng trạng
thái ngõ ra (LOGICPROBE). Chúng ta hãy nhập tên của các cổng này vào cửa sổ
Keywords. Sau đó chúng ta nhấp đôi chuột vào linh kiện được hiễn thị ở cửa sổ Results.
Lúc này, những linh kiện này đã được thêm vào trong cửa sổ DEVICES.

Sau khi đã lấy đầy đủ các linh kiện từ thư viện, sinh viên nhấp vào nút OK để đóng
cửa sổ thư viện trở về màn hình thiết kế.

3. Đưa linh kiện ra màn hình thiết kế, bố trí, sắp xếp lại linh kiện cho hợp lý và
nối dây
• Bước 1: Đưa linh kiện trong cửa sổ DEVICES ra màn hình thiết kế.
Nhấp chuột trái vào linh kiện cần lấy trong ô DEVICES, sau đó di chuyển con trỏ
ra ngoài màn hình thiết kế nơi cần đặt linh kiện và nhấp chuột trái thì linh kiện sẽ
được đặt tại đó.
Sinh viên di chuyển hết linh kiên ra ngoài màn hình thiết kế như hình sau:

• Bước 2: Bố trí linh kiện.


- Di chuyển linh kiện:

Bộ Môn Điện Tử Page | 7


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Để di chuyển linh kiện từ vị trí này đến vị trị khác, chúng ta làm như sau:

Nhấp và giữ trái chuột vào linh kiện cần di chuyển, sau đó di chuyển chuột đến vị trí
mới và thả chuột ra. Ngoài ra chúng ta cũng có thể sử dụng chức năng Block Move trên
thanh công cụ.

Hình 10: Các nút chức năng dùng để di chuyển, xoay, xóa linh kiện.

- Xoay linh kiện:

Để xoay các linh kiện chúng ta thực hiện như sau:

Đặt con trỏ lên linh kiện cần xoay và nhấn phải chuột, chọn các lệnh xoay mà sinh
viên muốn. Ngoài ra sinh viên cũng có thể dùng công cụ Block Rotate trên thanh công cụ
để xoay linh kiện.

Hình 11: bảng chức năng khi nhấn phải chuột vào màn hinh thiết kế.

• Bước 3: Nối dây.

Sau khi lấy và sắp xếp các linh kiện theo mong muốn, chúng ta tiến hành nối các chân
linh kiện. chúng ta thực hiện như sau:

Bộ Môn Điện Tử Page | 8


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Đặt con trỏ trên chân linh kiện cần nối dây cho đến khi ô vuông màu đỏ xuất hiện sau
đó chúng ta nhấn chuột trái vào chân linh kiện và di chuyển chuột đến chân linh kiện cần
nối khác và nhấn chuột trái một lần nữa để kết thúc quá trình nối dây. Sinh viên thao tác
tương tự như vậy cho đến khi hoàn thành sơ đồ mạch.

Để xóa đường nối dây sai, chúng ta nhấp phải chuột trên đường dây nối và chọn
Delete Wire hoặc nhấn đôi chuột phải trên đường dây nối.

• Bước 4: Kiểm tra sơ đồ nguyên lý và tiến hành mô phỏng.

Kiểm tra sơ đồ mạch sau khi hoàn thành xong mạch thiết kế là rất quan trong. Vì vậy
sinh viên cần nhìn lại bảng vẽ của mình một lần nữa rồi bấm nút để bắt đầu mô phỏng.

Khi chương trình mô phỏng bắt đầu khởi chạy sau khi nhấn nút . Sinh viên có thể

nhấn vào nút để thay đổi giá trị của nó.

Bộ Môn Điện Tử Page | 9


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

HƯỚNG DẪN SỬ DỤNG PHẦN MỀM QUARTUS II

I. GIỚI THIỆU

Board Altera DE2 như Hình 12 được thiết kế với nhiều tính năng đa dạng dựa trên số
lượng lớn các ngoại vi nhằm phục vụ cho các nghiên cứu khác nhau (ví dụ như: nghiên
cứu và phát triển về các lĩnh vực luận lý số học (digital logic), tổ chức máy tính (computer
organization) và FPGA). Trên kit này, một FPGA CHIP họ Cyclone II được tích hợp, và
các ngõ vào/ra (IO) của Chip được kết nối với tất cả các CHIP khác trên kit DE2 (như
CHIP TV Decoder, Ethernet 10/100M Controller, SRAM..) nhằm giúp cho người dùng có
thể thay đổi các ứng dụng hay cấu hình nhằm mong muốn nhằm hướng đến một ứng dụng
cụ thể.

Hình 12: Kit Altera DE2

II. THÀNH PHẦN

Board DE2 cung cấp khá nhiều tính năng hỗ trợ cho việc nghiên cứu và phát triển,
dưới đây là thông tin chi tiết của một board DE2:

➢ FPGA:
- Vimạch FPGA Altera Cyclone II 2C35.

Bộ Môn Điện Tử Page | 10


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

- Vi mạch Altera Serial Configuration – EPCS16.


➢ Các thiết bị xuất nhập:
- USB Blaster cho lập trình và điểu khiển API của người dùng; hỗ trợ cả 2 chế
độ lập trình JTAG và AS.
- Bộ điều khiển Cổng 10/100 Ethernet.
- Cổng VGA-out.
- Bộ giải mã TV và cổng nối TV-in.
- Bộ điều khiển USB Host/Slave với cổng USB kiểu A và kiểu B.
- Cổng nối PS/2 chuột/bàn phím.
- Bộ giải mã / mã hóa âm thanh 24-bit chất lượng đĩa quang với jack cắm line-
in, line-out, và microphone.
- 2 Header mở rộng 40-pin với lớp bảo vệ diode.
- Cổng giao tiếp RS-232 và cổng nối 9-pin.
- Cổng giao tiếp hồng ngoại.
➢ Bộ nhớ:
- SRAM 512-Kbyte.
- SDRAM 8-Mbyte.
- Bộ nhớ Flash 4-Mbyte (1 số mạch là 1-Mbyte).
- Khe SD card.
➢ Switch, các đèn led, LCD, xung clock
- 4 nút nhấn, 18 nút gạt.
- 18 LED đỏ, 9 LED xanh, 8 Led 7 đoạn.
- LCD 16x2.
- Bộ dao động với tần số 50-MHz và 27-MHz.

Một số điểm lưu ý trong quá trình sử dụng Kit DE2 được mô tả như sau:

-Chỉ sử dụng nguồn 12 VDC.


-Chốt sử dụng cho lập trình (RUN/PROG Switch for JTAG/AS Modes) nên
được thiết lập
- ở chế độ “RUN” trước khi sử dụng cho các thực nghiệm trong tài liệu này.
- Chỉ dùng cổng USB Blaster (Sát bên cổng nguồn) để kết nối máy tính và lập
trình.
III. MỘT VÀI ỨNG DỤNG CỦA BOARD DE2
➢ Ứng dụng làm TV box

Bộ Môn Điện Tử Page | 11


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Hình 13: TV Box

➢ Chương trình vẽ bằng chuột USB (paintbrush)

Hình 14: Chương trình vẽ (paintbrush)

➢ Máy hát Karaoke và máy chơi nhạc SD

Hình 15: Máy hát Karaoke và máy chơi nhạc từ card SD

Bộ Môn Điện Tử Page | 12


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

HƯỚNG DẪN SỬ DỤNG PHẦN MỀM QUATUS II


Các bước cần thực hiện:

Bước 1: Tạo project, viết code VHDL của mạch cần thiết kế.

Bước 2: Mô phỏng code VHDL (Verification Tools of Quartus / ModelSim) để kiểm


chứng chức năng của mạch.

Bước 3: Tổng hợp code VHDL sử dụng công cụ của Altera – Quartus.

Bước 4: Sử dụng công cụ Programmer của Quartus để thực hiện mạch trên FPGA.

Bước 5: Sử dụng các ngoại vi (switch, nút nhấn, LED,…) để thay đổi ngõ vào và
quan sát các ngõ ra trên Kit DE2.

IV. BÀI THỬ NGHIỆM MẪU LÀM QUEN PHẦN MỀM QUATUS II

Thiết kế mạch điều khiển LED sử dụng các Switch trên kit FPGA DE2

Sau khi mở phần mềm Quartus, người dùng sẽ tạo một dự án (project) cho riêng mình.
Sau đây là từng bước để tạo một dự án:

• Bước 1: Trên thanh menu chọn File/New Project Wizard (như Hình 17) để bắt
đầu quá trình tạo project.

Hình 16: Tạo một dự án mới


Sau đó một giao diện giới thiệu như Hình 18 xuất hiện nhấn Next để tiếp tục.

Bộ Môn Điện Tử Page | 13


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Hình 17: Giao diện giới thiệu

• Bước 2: Đặt tên project và thiết lập đường dẫn đến thư mục làm việc của
project.

Trong bước này bạn có thể đặt tên cho project của mình, và thiết lập đường dẫn đến
thư mục làm việc của project.

Trong Hình 19 thiết lập tên project là “test01” và đường dẫn đến thu mục làm việc
của project là “C:\altera\Project”. Bạn hoàn toàn có thể thay đổi thiết lập này nếu muốn.

Hình 18: Nhấn Next để tiếp tục sau khi thiết lập đường dẫn và tên dự án

• Bước 3: Add Files

Trong bước này bạn có thể add thêm các file thiết kế trước đó nếu muốn (Lưu ý các
file này có thể add thêm vào project sau khi bạn hoàn thành quá trình tạo project). Nhấn

Bộ Môn Điện Tử Page | 14


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Next để tiếp tục quá trình.

Hình 19: Add file

• Bước 4: Chọn device cho project muốn thiết kế.

Hình 20: Chọn họ và mã chip FPGA

Trong phần Family chọn dòng “Cyclone II” và trong phần Available device tìm và
chọn dòng “EP2C35F672C6” như Hình 21.

Mã chip“EP2C35F672C6” là mã của dòng chip được thiết kế trên kít, mã này có ghi

Bộ Môn Điện Tử Page | 15


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

trên chip FPGA của kít mà người dùng sử dụng. Nếu người dùng sử dụng kít khác thì phải
xem họ của chip FPGA và mã tương ứng.

Người đọc lưu ý phần mềm Quartus II là phần mềm dùng chung cho tất cả các chip
FPGA, việc chọn họ và mã tùy thuộc vào đối tượng ghip FPGA mà người dùng muốn sử
dụng trên kít.

đây, Hình 11 sẽ giải thích ý nghĩa của mã chip “EP2C35F672C6” mà chip này đang
được tích hợp trên kit Altera-DE2:

- EP2C: Mã cho họ Cyclone.


- 35: 35000 thành phần Les.
- F: Kiểu FPGA.
- 672: Số chân của FPGA CHIP.
- C: Tầm nhiệt độ.
- 6: Tốc độ.

Sau khi chọn device cho project nhấn Next để tiếp tục quá trình. Một giao diện thiết
lập EDA tool như Hình 23 xuất hiện chọn Next để tiếp tục. Đến đây một giao diện tóm tắt
về thông tin của project xuất hiện như Hình 24 nhấn Finish để hoàn thành quá trình.

Hình 21: Giải thích mã FPGA CHIP học Cyclone II

Bộ Môn Điện Tử Page | 16


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Hình 22: Thiết lập cho EDA tool

Hình 23: Tóm tắt thông tin Project


• Bước 5: Tạo file thiết kế cho project
Trên thanh menu chọn File -> New như Hình 25. Một hộp hội thoại được mở ra, trong
phần Design File chọn VHDL File cho định dạng file thiết kế bằng ngôn ngữ VHDL như
Hình 26 (hoặc Verilog HDL File cho định dạng file thiết kế bằng ngôn ngữ Verilog). Nhấn

Bộ Môn Điện Tử Page | 17


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

OK để hoàn thành quá trình tạo file.

Hình 24: Tạo file thiết kế

Hình 25: Chọn định dạng VHDL/ Verilog file cho thiết kế

Bộ Môn Điện Tử Page | 18


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

• Bước 6: Viết code chương trình cho thiết kế bằng ngôn ngữ VHDL (hoặc Verilog)
Đoạn code sau sử dụng ngôn ngữ VHDL để kết nối SW thứ 0 và thứ 1 trên kit DE2
đến các LEDR thứ 0 và thứ 1 thông qua FPGA
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;

entity test01 is
port (
SW: in std_logic_vector (1 downto 0) ;
LEDR : out std_logic_vector (1 downto 0)
);
end entity;

architecture behavior of test01 is


begin
LEDR (1 downto 0) <= SW (1 downto 0) ;
end architecture;

Nếu sử dụng ngôn ngữ Verilog, chương trình có nội dung như sau:
module test01 (SW, LEDR);
input[1:0] SW;
output[1:0] LEDR;

assignLEDR = SW;

endmodule

Bộ Môn Điện Tử Page | 19


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Hình 26: Soạn thảo chương trình bằng ngôn ngữ VHDL

Sau khi hoàn thành thiết kế chọn File-> Save As để lưu file thiết kế. Lưu ý tên của
file thiết kế phải trùng với tên của project và file thiết kế phải cùng chung thư mục với
project như Hình 28.

Hình 27: Lưu chương trình và đổi tên file giống tên project

• Bước 7: Tiến hành gán pin cho thiết kế bằng cách import Assignments

Bộ Môn Điện Tử Page | 20


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Bước này giúp phần mềm hiểu được các tên khai báo ngõ vào và ngõ ra. Trong ví dụ
này phần mềm hiểu ngõ vào được đặt tên “SW” sẽ trùng với tên ngõ vào “SW” của FPGA
CHIP (Tham khảo bảng file bảng tên chân - 01_DE2_Pin_Table.pdf) và ngõ ra LEDR cũng
tương tự. Nếu không có bước này khi chương trình được nạp lên kit sẽ không báo lỗi nhưng
chương trình sẽ không chạy được.

Trên thanh menu chọn Assignments -> Import Assignments như Hình 29.

Hình 28: Tìm nạp file gán chân bằng công cụ Assigments

Một giao diện gán pin xuất hiện như Hình 30, chọn file gán pin để import.

Trong ví dụ này sẽ chọn file “03_DE2_pin_assignments” đi kèm với bộ tài liệu.

Bộ Môn Điện Tử Page | 21


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Hình 29: Giao diện gán pin từ file

Trường hợp người dùng thích đặt tên ngõ vào và ngõ ra không trùng với tên của các
chân quy định cho FPGA CHIP, người dùng phải gán chân bằng cách vào
Assignments/Assignment Editor như Hình 31. Một giao diện chỉnh sửa xuất hiện như Hình
32, trong này cột “To” là tên đã được gán sẵn trong file “03_DE2_pin_assignments” được
add vào ở bước trên có thể sửa tên trong cột này thành tên trùng với tên tín hiệu trong file
thiết kế.Tuy nhiên, cách này không được khuyến khích vì vấn đề thời gian, không đồng
nhất tên gọi dễ gây nhầm lẫn và gây lỗi. Bước gán chân cần được thực hiện trước khi biên
dịch và nạp chương trình ở các bước tiếp theo sau đây.

Bộ Môn Điện Tử Page | 22


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Hình 30: Tiến hành edit Assignment pin

Hình 31: Giao diện edit Assignment pin

• Bước 8: Tiến hành biên dịch chương trình

Để tiến hành biên dịch chương trình chọn nút Start Compilation như Hình 33 hoặc
chọn Processing -> Start Compilation.

Bộ Môn Điện Tử Page | 23


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Hình 32: Tiến hành biên dịch chương trình bởi tác vụ nút Start Compilation

Quá trình biên dịch sẽ được tiến hành giống Hình 34. Sau khi biên dịch thành công
chương trình sẽ thông báo như Hình 35 trong đó chỉ có Warning và Info messages.

Hình 33: Tiến trình biên dịch chương trình

Bộ Môn Điện Tử Page | 24


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Hình 34: Biên dịch thành công (chỉ có Warning và Info messagess)

Đối với các thiết kế đơn giản và trong tài liệu này, người dùng có thể không cần quan
tâm đến các báo cáo kiểu “Warning”. Tuy nhiên với các thiết kế có quy mô lớn hay trong
môi trường công nghiệp, tất cả các báo cáo “Warning” luôn được kiểm tra và rà soát,một
số lỗi tiềm ẩn sẽ được phát hiện thông qua loại báo cáo này. Nhìn cửa số biên dịch
“Compilation”, ý nghĩa các bước trong quá trình biên dịch được mô tả:

- Analysis & Synthesis: Phân tích lỗi cú pháp chương trình và biên dịch nội
dung chương trình sang dạng thông tin sao cho kit hiểu và chọn các LEs cũng
như các phần cứng sẵn có cần thiết.
- Filter: Tiến hành thực biên dịch tạo các dạng thông tin kết nối, tối ưu các tài
nguyên sử dụng để có số LEs hay các thành phần khác nhỏ nhất có thể.
- Assembler: Tiến hành biên dịch dạng dạng file mà phần cứng hiểu để tạo thiết
kế cuối cùng. Quá trình hợp dịch dựa vào kết quả của quá trình Fitter sẽ tạo ra
hình ảnh của thiết kế, có thể trong các dạng sau:Programmer Object Files
(.pof), SRAM Object Files (.sof), Hexadecimal (Intel-Format) Output Files
(.hexout),Tabular Text Files (.ttf), and Raw Binary Files (.rbf),
- TimeQuest Timing Analysis: Bước này cần các thiết lập trước đó mà không
đề cập trong tài liệu. Bước này sẽ tạo ra các báo cáo giúp người dùng hình
dung được thiết kế của mình sẽ chiếm bao nhiêu tài nguyên, chạy được với tần
số tối đa là bao nhiêu,… Nói chung là những thông số liên quan đến thuộc tính
vật lý của thiết kế chứ không báo rằng thiết kế có chạy đúng hay sai, có lỗi cú
pháp hay không.

Bộ Môn Điện Tử Page | 25


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Nếu có lỗi cú pháp thì báo cáo kiểu “Error” sẽ được thể hiện ở hình dưới đây:

Hình 35: Thiết kế có lỗi và người đọc phải sửa lỗi thông qua những báo cáo Error ở cửa sổ
“Type Message”

Hình 36: Báo cáo tổng kết sau khi hoàn tất việc biên dịch

Phân tích báo cáo thiết kế như Hình 37 thấy tài nguyên được sử dụng chỉ là 4 pins.

Bộ Môn Điện Tử Page | 26


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Không một tài nguyên nào khác được sử dụng vì đoạn code chỉ đơn thuần là nối ngõ vào
SW thứ 0 và thứ 1 vào ngõ ra LEDR thứ 0 và thứ 1. Sau khi biên dịch xong, người đọc có
thể xem thiết kế ở mức cổng bằng cách sử dụng công cụ “Tools/Netlist Viewers/RTL
Viewer” như Hình 38.

Hình 37: Công cụ xem thiết kế ở mức cổng

Hình 38: Xem thiết kế ở mức cổng

Ở đây, thiết kế chỉ đơn thuần nối trực tiếp ngõ vào đến ngõ ra nên không một cổng
logic hay FF nào được thấy ở kết quả Hình 39.

Bộ Môn Điện Tử Page | 27


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

1. Thực hiện mô phỏng

Mô phỏng là một bước cần thiết để kiểm tra hành vi của thiết kế có đúng như mong
muốn của thiết kế hay không trước khi thực hiện đổ chương trình xuống kít.

Các bước sau đây mô tả việc thực hiện tạo giản đồ xung mô tả hành vi của thiết kế để
kiểm tra xem thiết kế có chạy như mong muốn hay không.

• Bước 1: Tạo file waveform

Trên thanh menu chọn File/new trong phần Verification/Debugging files chọn Vector
Waveform File để tạo file waveform như Hình 40.

Hình 39: Tạo file waveform

• Bước 2: Insert tín hiệu vào file waveform.

Bước này sẽ thêm các tín hiệu cần tiến hành mô phỏng vào file waveform, tiến hành
tạo dạng sóng đầu vào và quan sát kết quả dạng sóng đầu ra.

Trên thanh menu chọn Edit/Insert/Inset Node or Bus…như Hình 41.

Bộ Môn Điện Tử Page | 28


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Hình 40: Thêm các tín hiệu cần mô phỏng

Một giao diện Insert Node or Bus xuất hiện như Hình 42.

Hình 41: Giao diện Insert Node or Bus

Trên giao diện Insert Node or Bus chọn Node Finder… sẽ xuất hiện một giao diện
Node Finder như Hình 43, trong giao diện này ở trường Filter chọn Pins: assigned và click
chuột vào List để chương trình liệt kê các pin được gán trong thiết kế như Hình 44. Trong
danh sách này chọn tín hiệu muốn add vào waveform bên cột trái và add vào bên cột phải
như Hình 45. Tiếp theo nhấn OK -> OK như Hình 46 và Hình 47.

Bộ Môn Điện Tử Page | 29


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Hình 42: Giao diện Node Finder

Hình 43: List danh sách tín hiệu trong thiết kế

Bộ Môn Điện Tử Page | 30


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Hình 44: Chọn chính xác tín hiệu cần mô phỏng bằng cách đưa tín hiệu được liệt kê ở cửa
sổ bên trái qua bên phải bằng cách ấn vào biểu tượng

Hình 45: Chọn hết các tín hiệu muốn xem rồi nhấn OK

Chỉ xem những tín hiệu đầu vào và đầu ra

Bộ Môn Điện Tử Page | 31


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Hình 46: Chọn OK sau khi thiết lập các thông số

• Bước 3: Vẽ dạng sóng cho tín hiệu đầu vào

Sau khi thiết lập xong các tín hiệu mô phỏng sẽ xuất hiện trên waveform. Trên giao
diện này ta có thể vẽ dạng sóng cho từng tín hiệu bằng cách kéo chuột chọn đoạn tín hiệu
muốn set và chọn nó là giá trị 1 hay 0 trên thanh công cụ như Hình 48. Sau khi vẽ dạng
sóng các tín hiệu đầu vào cho quá trình mô phỏng hoàn thành lưu file lại cùng chung thư
mục với file project như Hình 49.

Hình 47: Giao diện dạng sóng với tín hiệu ngõ vào SW

Bộ Môn Điện Tử Page | 32


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Hình 48: Lưu file waveform

• Bước 4: Thiết lập thời gian chạy mô phỏng

Trên thanh menu chọn Edit -> End Time như Hình 50 để tiến hành thiết lập thời gian
chạy mô phỏng cho project. Sau đó nhập thời gian chạy mô phỏng rồi nhấn OK (Hình 51).

Hình 49: Thiết lập thời gian kết thúc mô phỏng

Bộ Môn Điện Tử Page | 33


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Hình 50: Nhập thông số thời gian kết thúc rồi chọn OK

• Bước 5: Tiến hành chạy mô phỏng

Trên thanh menu chọn Processing -> Generate Functional Simulation Netlist để
tạo ra Netlist function cho quá trình mô phỏng như Hình 52. Sau đó click chuột vào nút
Start Simulation để bắt đầu chạy mô phỏng như Hình 53.

Hình 51: Tạo Netlist cho mô phỏng

Bộ Môn Điện Tử Page | 34


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Hình 52: Bắt đầu chạy mô phỏng

Hình 53: Kết quả quá trình chạy mô phỏng

Hình 54 cho thấy tín hiệu ngõ ra LEDR theo đúng như tín hiệu ngõ vào SW. Điều

Bộ Môn Điện Tử Page | 35


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

này đúng theo mong muốn thiết kế SW thứ 0 gán cho LEDR thứ 0 và SW thứ 1 gán cho
LEDR thứ 1.
2. Thực hiện nạp chương trình xuống kít

Tiếp theo, phần này sẽ hướng dẫn nạp chương trình xuống kít. Tuy nhiên, trước khi
nạp chương trình xuống kit, thì các kết nối giữa máy tính với kít thông qua cổng USB
Blaster được mô tả như Hình 55.

Hình 54: Kết nối kít với máy tính thông qua cổng USB Blaster

Sau khi biên dịch hoàn tất, người dùng có thể nạp lên kit thông qua công cụ (Tool-
>Programmer) như Hình 56.

Hình 55: Công cụ nạp chương trình

Bộ Môn Điện Tử Page | 36


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Giao diện nạp lệnh như Hình 57 cần chú ý những điểm sau:

- Kiểm tra chính xác họ FPGA trên kit đang dùng.


- Mục “HardwareSetup” cần kiểm tra lại đã nhận “Driver” chưa. Nếu chưa
nhận sẽ hiện chữ “No Hardware”. Còn nếu nhận thì sẽ hiện chữ “USB-
Blaster”. Người dùng có thể sẽ cần dùng file “04_usb-blaster_driver” trong
gói tài liệu để cài driver cho máy tính của mình hoặc sử dụng mạng Internet
để kiểm tra và cài đặt.

Hình 56: Giao diện nạp lệnh chưa nhận được USB

Hình 57: Giao diện nạp lệnh đã nhận được USB-Blaster

Bộ Môn Điện Tử Page | 37


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Sau khi đã nhận được USB, nhấn “Start” để bắt đầu nạp file lên kit và kiểm tra. Tuy
nhiên phải chú ý là báo cáo “100% (Successful)” phải được hiển thị như Hình 59 để đảm
bảo toàn bộ chương trình được nạp thành công.

Hình 58: Chương trình được nạp xuống thành công

Kết quả được khảo sát thông qua Hình 60. Khi SW thứ 0 bật lên thì đèn LEDR thứ 0
sáng và ngược lại cho SW thứ 1 và LEDR thứ 1. Các SW thứ 2 cho đến 17 được bật lên
nhưng đèn LEDR thứ 2 đến 17 không sáng vì trong đoạn mã chỉ khai báo sử dụng từ 0 đến
1.

Hình 59: Kiểm tra kết quả bằng các Switch và đèn LEDR

Bộ Môn Điện Tử Page | 38


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

PHỤ LỤC

I. HƯỚNG DẪN CÀI ĐẶT PHẦN MỀM QUARTUS 13.0SP1

Bước 1: Tải phần mềm Quartus về máy tính

Thí nghiệm kỹ thuật số sử dụng Quartus II phiên bản 13.0sp1 để build và nạp chương
trình cho board DE2 dựa trên chip Altera Cyclone II. Cần lưu ý rằng các board Altera DE2
sử dụng chip Cyclone V nên sinh viên cần lưu ý cài đặt Devices đầy đủ để có thể nạp
chương trình cho board được.

Điều đầu tiên chúng ta cần là tải xuống bản sao của Quartus. Quartus có thể được tải
miển phí từ trang chủ Quartus của Intel, hoặc sinh viên có thể tải xuống thông qua đường
dẫn sau:

https://drive.google.com/open?id=12Vqf0ctLDyXa6uTCVUVIws_4bWuRMotE&authuser=
haiphu%40hcmut.edu.vn&usp=drive_fs

Sinh viên sau khi tải về cần giải nén tập vì tập cài đặt và tập devices được nén dưới
dạng .rar

Bước 2: Cài đặt Quartus

Sau khi giải nén sẽ có một thư mục có tên Quartus-web-13.0.1.232-windows. Nhấp
vào thư mục này và tìm tập lệnh cài đặt có tên setup.bat.

Nhấp đúp vào setup.bat và nó sẽ bắt đầu quá trình cài đặt. Lưu ý rằng một cửa sổ
cmd.exe có thể bật lên và hãy bấm Yes để tiếp tục:

Bộ Môn Điện Tử Page | 39


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Bấm Next >

Đồng ý với thỏa thuận về bản quyền bằng cách chọn “I accept the agreement” và sau
đó nhấp vào Next >

Bộ Môn Điện Tử Page | 40


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Sau đó, sinh viên sẽ thấy một cửa sổ yêu cầu chọn thư mục để cài đặt. Trong ví dụ
này, tôi sẽ để mặc định là “c:\altera\13.0sp1”

Sau đó, 1 cửa sổ sẽ hiển thị tương tự dưới đây để hiển thị các tùy chọn khi cài đặt
phần mềm. Sinh viên hãy để mặc định như hình và bấm Next >. Lưu ý: Sinh viên nên
chọn ModelSim-Altera Starter Edition (Free) và bỏ chọn ModelSim-Altera Edition

Bộ Môn Điện Tử Page | 41


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Nhấn Next và chờ cho quá trình cài đặt kết thúc:

Thời gian cài đặt tương đối lâu nên sinh viên kiên nhẫn nhé! (tầm 30 phút cho quá
trình cài đặt).

Bộ Môn Điện Tử Page | 42


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

II. HƯỚNG DẪN CÀI ĐẶT PHẦN MỀM PROTEUS V8.12

Phần mềm vẽ Proteus là phần mềm vẽ mạch điện tử được phát triển bởi công ty
Lancenter Electronics. Phần mềm có thể mô tả hầu hết các linh kiện điện tử thông dụng
hiện nay. Vì vậy trong phần thí nghiệm của môn Kỹ thuật số, sinh viên cần phải hiểu rõ
nguyên lý sơ đồ mạch của từng bài thí nghiệm bằng cách sử dụng phần mềm Proteus để
thực hiện mô phỏng trước các mạch này trước khi tiến hành thực hiện bài thí nghiệm.

Bước 1: Tải tệp cài đặt về máy tính

Điều đầu tiên chúng ta cần là tải xuống bản sao của Proteus. Sinh viên có thể tải
xuống thông qua đường dẫn sau:

https://drive.google.com/open?id=17cxKJ_JSOfhcT0t9jNRwGWw62R9qrYYF&authuser=h
aiphu%40hcmut.edu.vn&usp=drive_fs1

Bước 2: Cài đặt Proteus

Sau khi giải nén thành công, sinh viên vào thư mục vừa giải nén và chạy tệp “Proteus
8.12 SP0 Pro.exe”

1 Tệp cài đặt được lấy tại đường dẫn: https://www.vniteach.com/2021/11/13/huong-dan-tai-


va-cai-dat-proteus-8-12-phan-mem-mo-phong-mach-dien/

Một cửa sổ Setup sẽ xuất hiện yêu cầu chọn thư mục để cài đặt. Trong ví dụ này tôi

Bộ Môn Điện Tử Page | 43


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

để mặt định. Sau đó bấm Next >

Bấm Next >

Quá trình cài đặt sẽ tốn một vài phút. Sau khi cài đặt xong bấm Finish.

Bộ Môn Điện Tử Page | 44


Thí Nghiệm Kỹ Thuật Số
BÀI THÍ NGHIỆM 0 – GIỚI THIỆU

Sau đó, Sinh viên cần tìm thư mục cài đặt và vào thư mục BIN. Cụ thể trong ví dụ
này là: “C:\Program Files (x86)\Labcenter Electronics\Proteus 8 Professional\BIN\”

Nhấn chuột phải vào tệp “PDS.EXE” và chọn Properties.

Chọn qua tab Compatibility, tích chọn vào ô Run this program as administrator. Chọn
nút Apply, rồi OK.

Bộ Môn Điện Tử Page | 45


Thí Nghiệm Kỹ Thuật Số

You might also like