Khoa Đin t-Vin thông, Đại hc Bách khoa Hà ni
Người biên son: KS. Nguyn Minh Tiến và TS. Hoàng Mnh Thng 1
BÀI 3:
GII THIU V QUARTUS II VÀ QUY TRÌNH THIT K TRÊN FPGA
1. Mc tiêu
Bài thí nghim này gii thiu v phn mm Quartus II và tng quan v các bước thc hin trên CAD cho quy
trình thiết kế mch s. Ví d v thiết kế mch đơn gin minh ha cho tng bước dùng phn mm Quartus II
và thc hin trên FPGA ca Altera.
2. Kiến thc cn trang b
- Cơ bn v thiết kế s,
- Cơ bn v ngôn ng mô t phn cng VHDL,
- Nm rõ cách s dng kit DE1.
3. Các kiến thc thu được
- Biết cách to mt d án trên phn mm Quartus II.
- Biết cách tng hp mch logic t mã VHDL dùng trình tng hp tích hp sn ca Quartus II.
- Biết cách thc hin mô phng cho mch logic.
- Biết cách gán chân cho FPGA để đưa các tín hiu vào ra mch logic ni vi các chân trên FPGA.
- Biết cách np và cu hình cho FPGA
4. Các bước thc hin mt thiết kế
Các bước th hin quy trình thiết kế s trên các IC có th lp trình (FPGA/CPLD) như sau:
Hình 1. Quy trình thiết kế CAD thông dng
- Nhp thiết kế: Mch logic mong mun được mô t bng ngôn ng mô t phn cng như
VHDL/Verilog hoc bng sơ đồ mch.
Khoa Đin t-Vin thông, Đại hc Bách khoa Hà ni
Người biên son: KS. Nguyn Minh Tiến và TS. Hoàng Mnh Thng 2
- Tng hp: Công c thc hin chuyn các biu din mch đin trên thành dng tp netlist, trong đó
biu din các thành phn logic cn cho mch cùng các kết ni gia các thành phn logic.
- Mô phng chc năng: Mch đã tng hp được kim tra để phân tích tính chính xác v chc năng;
trình mô phng không quan tâm đến vn đề thi gian.
- Fitting: Công c CAD Fitter xác định v trí đặt các thành phn logic đã đưa ra trong tp netlist vào
trong FPGA, đồng thi xác định các đường đi dây trong FPGA để kết ni các thành phn logic.
- Phân tích thi gian: Tr đường truyn theo các đường khác nhau trong mch đã được fit trên được
phân tích để xác định kh năng hot động mong mun ca mch.
- Mô phng thi gian: Mch đã được fit được kim tra để phân tích c v chc năng và c v mt thi
gian.
- Lp trình và cu hình: Mch logic mong mun được trin khai trên FPGA/CPLD thc tế thông qua
chương trình np và cu hình cho FPGA/CPLD.
C th các bước thiết kế vi Quartus II
Phn 1: To mi mt d án
Bước 1: Chn mc File > New Project Wizard để m ca s to mi d án ging như Hình 2. Chú ý là d
án cn có tên ging vi tên ca thc th thiết kế, nó cho thy thc th là mc đỉnh. Chn tên light làm tên
cho d án và thc th mc đỉnh, nhp chn Next.
Hình 2. Ca s chn đường dn và tên d án
Bước 2: Trong ca s Family & Device Settings, chúng ta s chn loi chip, là chip FPGA Cyclone
EP2C20F484C7N có trên kit DE1 mà chúng ta s dng trong bài thí nghim. Nhp chn Next để chuyn
sang ca s chn kế tiếp.
Khoa Đin t-Vin thông, Đại hc Bách khoa Hà ni
Người biên son: KS. Nguyn Minh Tiến và TS. Hoàng Mnh Thng 3
Hình 3. Ca s chn loi chip FPGA dùng cho d án
Bước 3: Trong ca s kế tiếp, chúng ta có th chn la bt k công c ca hãng th ba nào cn dùng. Công
c CAD thông dng dùng cho phn mm thiết kế mch đin t là EDA tools. Vì chúng ta không cn thay đổi
gì trong vic la chn công c, nhp chn Next.
Bước 4: Quan sát bng tng kết các thiết lp va thc hin. Nhp chn Finish để quay tr v màn hình chính
ca phn mm Quartus II.
Phn 2: Nhp thiết kế dùng mã VHDL
Trong bài thí nghim này, chúng ta s to mt mch điu khin đèn hai chiu như trong Hình 4. Mch có th
dùng để điu khin mt đèn LED khi mt trong hai chuyn mch x1 hoc x2 đóng, tương ng vi mc logic
“1”. Chú ý rng ch cn dùng hàm XOR cho hai đầu vào x1x2, tuy nhiên chúng ta s xây dng li bng
các cng logic ri rc.
Hình 4. Mch logic điu khin đèn và bng chân lý ca mch
Bước 1: Chn mc File > New, trong ca s New, chn VHDL File, và nhp chn OK. Sau khi nhp chn
OK thì ca s son tho s hin ra. Nhp vào mã VHDL như dưới đây vào trong ca s son tho văn bn.
Khoa Đin t-Vin thông, Đại hc Bách khoa Hà ni
Người biên son: KS. Nguyn Minh Tiến và TS. Hoàng Mnh Thng 4
Bước 2: Chn mc File > Save As để m ca s Save As. Trong phn Save as type chn VHDL File. Trong
phn File name nhp light. Nhp chn Save để đưa tp này vào trong thư mc ca d án.
Phn 3: Thêm các tp thiết kế vào mt d án
Bước 1: Chn mc Assignments > Settings > Files, điu này dn đến ca s như trong Hình 4. Mt cách
khác là chn Project > Add/Remove Files trong Project. Nếu bn dùng trình son tho để to tp và chn vào
hp có nhãn Add file to current project, thì tp light.vhd đã có trong d án, ngược li tp này cn thêm vào
d án.
Hình 5. Ca s các cài đặt có th dùng để nhp tp thiết kế vào d án
Bước 2: Nhp chn nút … bên cnh phn File name để có ca s chn tp cn thêm vào. Nhp chn tp
light.vhd và nhp chn Open. Tp đã chn s hin tên trên phn File name. Nhp chn Add và OK để đưa
tp này vào d án.
library IEEE;
use IEEE.STD_LOGIC_1164.all;
entity light is
port( x1, x2: in std_logic;
f : out std_logic);
end light;
architecture Behavioral of light is
begin
f <= (x1 and not x2) or (not x1 and x2);
end Behavioral;
Khoa Đin t-Vin thông, Đại hc Bách khoa Hà ni
Người biên son: KS. Nguyn Minh Tiến và TS. Hoàng Mnh Thng 5
Phn 4: Biên dch mã VHDL
Bước 1: Nhp chn mc Processing > Start Complication. Biên dch thành công (hay không thành công) s
được thông báo trên hp thoi bung ra sau khi quá trình biên dch kết thúc. Xác nhn bng cách nhp nút
OK.
Bước 2: Khi biên dch hoàn thành, mt báo cáo biên dch được đưa ra. Ca s này cũng có th m ra bt k
lúc nào bng cách nhp chn Processing > Complication Report. Trong báo cáo này bao gm mt s danh
mc bên trái ca s, nhp vào các danh mc này để thy thông tin chi tiết ca danh mc này hin lên bên
phi ca s.
Phn 5: Sa các li
Bước 1: M tp light.vhd, dòng có câu lnh gán biu thc logic cho f, ta b du chm phy cui dòng lnh,
lưu thay đổi vi tp light.vhd ri biên dch li d án. Lúc này phn mm s thông báo là biên dch không
thành công và báo cáo tng hp đưa ra kết qu biên dch d án b hng.
Bước 2: Chn mc Analysis & Synthesis > Messages để hin th thông báo li. Nhp đôi vào thông báo li
đầu tiên, dòng lnh li s được đánh du trên trình son tho văn bn, sa li cho đúng ri biên dch li d
án.
Phn 6: Gán chân
Chúng ta s gán các chuyn mch gt SW0SW1 làm các đầu vào x1x2 cho mch đin. Các chuyn mch
này ni vi các chân L22L21 ca FPGA. Và chúng ta s gán đầu ra f ti LEDG0, được kết ni vi chân
U22 ca FPGA.
Bước 1: Nhp chn Assignments > Assignment Editor. Trong Category chn Pin. Nhp đôi vào <<new>>.
Nhp chn x1 t danh sách tri xung làm chân đầu tiên được gán. Tiếp đến nhp đôi vào hp bên phi hp
dành cho x1 (ct Location). Chn chân PIN_L22 t danh mc hoc có th gõ trc tiếp L22 vào hp Location.
Hình 6. Ca s Assignment Editor dùng để gán chân
Bước 2: Tương t như trên, thc hin gán chân cho đầu vào x2 cho chân L21đầu ra f cho chân U22.