trình các ngôn mô khác nhau: ABEL, VHDL, VERILOG, SHEMATIC, State Machine thi các trình ngay trên DUNG MƠN - Bài 1.. Trình biên ABEL có mô và file chì fuse map cho PLD Khung trình ngô
Trang 1Biên
www.hutech.edu.vn
Trang 2*1.2021.ELD309*
tailieuhoctap@hutech.edu.vn
Trang 3I III
BÀI 1: ABE L 1
1.1 1
1
2
1.2 TRÌNH & BIÊN 3
3
4
1.3 TRÌNH 5
1.4 CÁC BÀI THÍ 8
TÓM 12
CÂU ÔN 12
BÀI 2: BOARD DE2 VÀ RÊN FPGA 13
2.1 BOARD DE2 13
13
15
2.2 CÁC TRÊN F PGA 15
2.3 TRÌNH BIÊN 16
16
17
2.4 TRÌNH LÊN BOARD DE2 19
19
22
2.5 MÔ TRÌNH 25
25
25
26
26
TÓM 27
CÂU ÔN 27
TRÌNH VE RILOG 28
3.1 28
3.2 NGÔN TRÌNH VE RILOG 29
29
30
TÓM 34
Trang 4II
CÂU ÔN 34
TRÌNH VH DL 36
4.1 36
4.2 NGÔN TRÌNH VH DL 36
36
37
TÓM 41
CÂU ÔN 41
I 43
5.1 43
5.2 FPGA THÔNG QUA (S CHEMATIC ) 43
43
46
46
TÓM 48
CÂU ÔN 48
I 49
6.1 MÁY THÁI 49
49
50
6.2 THÁI 50
50
51
6.3 TRÌNH FPGA THÔNG QUA MÁY THÁI 51
51
52
6.3.3 Qui t rình 52
56
TÓM 57
CÂU ÔN 57
TÀI THAM 58
Trang 5MÔ MÔN
VHDL, VERILOG, SHEMATIC, State Machine
DUNG MÔN
- Bài 3: Ngôn trình Verilog và VHDL
bài và tìm thêm các thông tin liên quan bài
Trang 7chì (fuse map) cho PLD
Module Module_name
Title
Device_indentifier Device device_type
@alternate " có có không
Pin declarat ions
Other declarat ions
Equations
Test_vectors
End module_name
Trang 82 BÀI 1: A BEL
1.1.2 Các c chu n b
trình cho PLD dùng ngôn ABEL
1: Cài Total commander
Trang 104 BÀI 1: A BEL
3: Sau khi xong ta ph i file có tên trùng module_name, file có
1.2.2 Biên d ch trình ABEL
ABE tênfile enter
Trang 11BÀI 1: A BEL 5
ra các file: hamy.lst, hamy.doc, hamy.sim, hamy.jed
- hamy.lst :
- hamy.doc : mô chân linh
- hamy.sim : mô
cho khi nào không còn trong file.list
Trang 126 BÀI 1: A BEL
Trang 13BÀI 1: A BEL 7
OK
5: trình Go Quá trình trình ra Sau khi trình xong
s báo là complete
Trang 14module table flag '-t1'
title ' ham y 3 ngo vao dung bang su that'
Trang 1510 BÀI 1: A BEL
Equations
Y0 = (select == 0) & ENB;
Y1 = (select == 1) & ENB;
Y2 = (select == 2) & ENB;
Y3 = (select == 3) & ENB;
Y4 = (select == 4) & ENB;
Y5 = (select == 5) & ENB;
Y6 = (select == 6) & ENB;
Y7 = (select == 7) & ENB;
Trang 1610 BÀI 1: A BEL
Equations
Y0 = (select == 0) & ENB;
Y1 = (select == 1) & ENB;
Y2 = (select == 2) & ENB;
Y3 = (select == 3) & ENB;
Y4 = (select == 4) & ENB;
Y5 = (select == 5) & ENB;
Y6 = (select == 6) & ENB;
Y7 = (select == 7) & ENB;
Trang 17BÀI 1: A BEL 11
module count8db flag '-t1'
title 'mach dem dong boardmod8'
Trang 1812 BÀI 1: A BEL
TÓM
Trong bài này, viên làm quen ngôn ABEL trình cho PLD:
Ngôn ABEL hình ngõ vào: trình BOOL,
thái
Cách biên trình ngôn ABEL
Cách trình cho PLD
A, B, C Ngõ ra Y = 1 khi A = B C
kênh
trình Abel mô hàm Y
Trang 192.1 GI I THI U BOARD DE2
B công c DE2 c thi t k nh m áp d ng nhu c u , gi ng d y và
DE2 là board m ch th nghi m ho t ng riêng
2.1.1 Các thành ph n board DE2
Trang 2014 BÀI 2:
- FPGA:
Vi FPGA Altera Cyclone II 2C35
Vi Altera Serial Configuration EPCS16
Trang 21BÀI 2: 15
2.1.2 M t s ng d ng tiêu bi uc a boardard DE2
kèm board DE2 bao 2 Quartus 2 và Nios 2 Integrated Development Environment (IDE)
Trang 2216 BÀI 2:
Trang 23BÀI 2: 17
- Family : cyclone II
- Check: show advanced device, specific device selected in
- Available device: Ep2c35F672C6
2.3.2 So n th o trình& biên d ch
Trang 24- File name trùng tên trong module là tên trong Entity
- Check Add file to current project
4 Sau khi file xong cho file là top-level thì biên
Trang 252.4.1 C u hình chân
các chân trên FPGA làm ngõ vào và ngõ ra Tuy nhiên, trên board DE2
Trang 2620 BÀI 2:
i các chân FPGA các thành khác trên board Chính vì
board DE2
có tên là LEDG hay LEDR,
gán chân sau cho ví trên:
Hình 2.10: Gán chân cho chip FPGA
Finder
Trang 27BÀI 2: 21
- Filter: Pins: all
Trang 2822 BÀI 2:
3 theo vào ô <<new>> Assigment Name Location (Accepts wildcards/groups) cho các tín vào ra
Hình2.14: Quá trình gán chân hoàn
các chân gán
2.4.2 N p lên board DE2
DE2 2 cách lên boardard:JTAG (Joint Test Action Group)và AS (Active
Tools->Programmer
Trang 29BÀI 2: 23
Program/configure
trình lên boardard DE2
1 nút RUN/PROG trên boardard DE2 sang PROG
Trang 3024 BÀI 2:
trình hình lên boardard DE2
Hình 2.17: Quá trình trình hoàn
Trang 31BÀI 2: 25
2.5.1 T o file mô ph ng
2.5.2 Ch n ch mô ph ng
Trang 32Vào Assigment > Settings
Trang 33- gán chân cho FPGA
- trình lên board DE2
trên
Câu 5: các Switch SW17-0 là các ngõ vào Các LEDR17-0 là các ngõ
ra
trình lên FPGA
Trang 34- Verilog
- VHDL
- AHDL
- System verilog
Trang 35BÀI 3: 29
3.2 NGÔN NG L P TRÌNH VERILOG
cho quá trình tra
Trang 3630 BÀI 3:
3.2.2 Các bài thí nghi m verilog
multiplexer):
b file verilog SW17 là ngõ vào (s) SW7-0 ngõ vào X SW15-8 ngõ
trình 8-bit wide 2-1 multiplexer
module part3(SW,s,LEDR, LEDG);
Trang 37module counter (clk, clr, q);
input clk, clr;
output [3:0] q;
Trang 38a 1 project trên quartus
b file Verilog SW2-0 cho các ngõ vào C2C1C0 các ngõ ra
module part4(C, display);
input [2:0]C;
output [0:6]display;
assign display[0]=~C[0];
Trang 4034 BÀI 3:
TÓM
Trong bài này, viên làm quen các ngôn trình
trình FPGA; trình mô ngôn VERILOG và trên FPGA
sau: SW15-12, SW11-8, SW7-4, SW3-0 lên các LED HEX3, HEX2, HEX1 và
Trang 41BÀI 3: NGÔN 35
Câu 4: Cho
b File Verilog cho KEY0 = clock, SW0 = Clear, SW1 = Enable HEX0
giá
Trang 4236 BÀI 4:
VHDL
Sau khi xong bài này, viên có
4.1 GI I THI U
VHDL
4.2 NGÔN NG L P TRÌNH VHDL
Trang 44trình và thi trên board DE2
library IEEE;
use IEEE.STD_LOG IC_1164.ALL;
use IEEE.STD_LOG IC_ARITH.ALL;
use IEEE.STD_LOG IC_UNSIGNED.ALL;
SUM : out std_logic_vector(3 downto 0);
Cout: out std_logic
);
end adder4;
architecture behavioral of adder4 is
signal A_temp : std_logic_vector(4 downto 0);
signal B_temp : std_logic_vector(4 downto 0);
Trang 45sum_temp <= a_temp + b_temp + Cin;
end process plus;
SUM <= sum_temp(3 downto 0);
Cout <= sum_temp(4);
end behavioral;
SW7-4; Cin = SW8; SUM =LEDG3-0; Cout = LEDR0
Trang 4640 BÀI 4:
end counter;
architecture behv of counter is
signal Pre_Q: std_logic_vector(n-1 downto 0);
begin
behavior describe the counter
process(clock, count, clear)
begin
if clear = '1' then
Pre_Q <= Pre_Q - Pre_Q;
elsif (clock='1' and clock'event) then
Clear = SW0; cout = SW1; Q =LEDGn- LEDG0
Trang 47BÀI 4: 41
TÓM
Trong bài này, viên làm quen các ngôn trình
trình FPGA trình mô ngôn VHDL và
trên FPGA
sau: SW15-12, SW11-8, SW7-4, SW3-0 lên các LED HEX3, HEX2, HEX1 và
Trang 4842 BÀI 4: RÌNH VHDL
Câu 4: Cho
b File VHDL cho KEY0 = clock, SW0 = Clear, SW1 = Enable HEX0
giá
Trang 5044 BÀI 5:
Hình 5.1:
nút trên thanh công
f (orthogonal bus tool): bus cho các tín
g (Zoom tool): phóng to, thu
Trang 51BÀI 5: 45
Check p Add file to current project
Trang 5246 BÀI 5:
9 Sau khi file xong cho file là top-level thì biên
output là LEDR[0]
OK
Trang 536 Sau khi quá trình compilation hoàn OK
7 hành lên board DE2 Quy trình này hoàn toàn
2.4.2 bài 2
Trang 54FPGA.
Trang 55BÀI 6: 49
Sau khi xong bài này, viên có t
- mô hình máy thái Moore & Mealy
- mô hình máy thái
- file ngôn mô máy thái
6.1 MÁY TR NG THÁI
nó
6.1.1 Máy tr ng thái ki u MOORE
FSM thay Vì ngõ ra liên quan gì ngõ vào
Trang 5650 BÀI 6:
Khi các giá ngõ vào thay thì các giá các ngõ ra có thay
6.1.2 Máy tr ng thái ki u MEALY
Khi giá các ngõ vào thay thì giá các ngõ ra có thay trong cùng chu xung
6.2.1 Gi n tr ng thái ki u MOORE
Trang 576.3.1 Gi i thi u
Trang 5852 BÀI 6:
6.3.2 M c a s so n th o máy tr ng thái
1 M Quartus và project (cách trình bày trong bài 2)
2 vào File -> New file
3 Trong file State Machine file, sau
6.3.3 Qui trình t o máy tr ng thái
sau là qui trình ra máy thái có
2 bit 1 liên Sau file này thành code verilog
1 vào công (State tool) sau 3 thái hình
Trang 59BÀI 6: 53
2 theo vào công (Transition tool) và drag
Trang 6054 BÀI 6:
3 theo vào (Insert input port) thêm tín
4 vào (State table) thái
5 tín tên tín vào (input1)
(input1)
input1 & input2)
6 các thái khác
7 thái state1 sau
Trang 61BÀI 6: 55
8 Trong Output Port tín Output Value
9 thao tác này cho 2 thái còn
a State1: Output Port là output1, và Output Value là 0
b State2: Output Port là ouput1, và Output Value là 0
c State3: Output Port là output1, và Output Value là 1
10 i cùng máy thái hình
11 Ctrl + S, vào trên thanh công
máy thái này tên là Machine11.smf
Trang 6256 BÀI 6:
6.3.4 T o file ngôn ng mô t ph n c ng t máy tr ng thái
Trang 63BÀI 6: 57
TÓM
Trong bài này, viên
- thái và các thái
mã ngôn máy thái
Trang 64[5]Zainalabedin Navabi (2006) Verilog Digital System Design McGraw-Hill
[6]Douglas L Perry (2002) VHDL: Programming by Example McGraw-Hill