Mình có cả file cài và link download các dạng bài tập như trong báo cáo mình đã làm ở dưới, ai có nhu cầu muốn tham khảo mình gửi cho qua gmail liên hệ với mình qua sđt 01656658513..Nội Dung chính của báo cáo: TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP HÀ NỘI NGÀNH: ĐIỆN ĐIỆN TỬ BÁO CÁO THỰC HÀNH MÔN: THỰC TẬP NGHỀ NÂNG CAO NGÀNH ĐIỆN TỬ TRUYỀN THÔNG Giảng viên hướng dẫn: Nguyễn Thị Hồng Nhung NỘI DUNG I. Lời nói đầu II. Nội dung III. Kết quả IV. Kết Luận LỜI NÓI ĐẦU VHDL là ngôn ngữ mô tả phần cứng cho các mạch tích hợp tốc độ rất cao. VHDL được phát triển để giải quyết các khó khăn trong việc phát triển, thay đổi và lập tài liệu cho các hệ thống số. VHDL là một ngôn ngữ độc lập không gắn với bất kỳ một phương pháp thiết kế, một bộ mô tả hay công nghệ phần cứng nào. Người thiết kế có thể tự do lựa chọn công nghệ, phương pháp thiết kế trong khi chỉ sử dụng một ngôn ngữ duy nhất. VHDL có một số ưu điểm hơn so các ngôn ngữ mô phỏng phần cứng khác hẳn là: Khả năng được hỗ trợ bởi nhiều công nghệ và nhiều phương pháp thiết kế: VHDL cho phép thiết kế bằng nhiều phương pháp ví dụ phương pháp thiết kế từ trên xuống, hay từ dưới lên dựa vào các thư viện sẵn có. VHDL cũng hỗ trợ cho nhiều loại công cụ xây dựng mạch như sử dụng công nghệ đồng bộ hay không đồng bộ, sử dụng ma trận lập trình được hay sử dụng mảng ngẫu nhiên. Tính độc lập với công nghệ: VHDL hoàn toàn độc lập với công nghệ chế tạo phần cứng. Một mô tả hệ thống dùng VHDL thiết kế ở mức cổng có thể được chuyển thành các bản tổng hợp mạch khác nhau tuỳ thuộc công nghệ chế tạo phần cứng mới ra đời nó được áp dụng ngay cho các hệ thống đã thiết kế. Khả năng mô tả mở rộng: VHDL cho phép mô tả hoạt động của phần cứng từ mức hệ thống số cho đến mức cổng. VHDL có khả năng mô tả hoạt động của hệ thống trên nhiều mức nhưng chỉ sử dụng một cú pháp chặt chẽ thống nhất cho mọi mức. Như thế ta có thể mô phỏng một bản thiết kế bao gồm cả các hệ con được mô tả chi tiết. Khả năng trao đổi kết quả: Vì VHDL là một tiêu chuẩn được chấp nhận, nên Một mô hình VHDL có thể chạy trên mọi bộ mô tả đáp ứng được tiêu chuẩn VHDL. Các kết quả mô tả hệ thống có thể được trao đổi giữa các nhà thiết kế sử dụng công cụ thiết kế khác nhau nhưng cùng tuân theo tiêu chuẩn VHDL. Cũng như một nhóm thiết kế có thể trao đổi mô tả mức cao của các hệ thống con trong một hệ thống lớn (trong đó các hệ con đó được thiết kế độc lập). Khả năng hỗ trợ thiết kế mức lớn và khả năng sử dụng lại các thiết kế: VHDL được phát triển như một ngôn ngữ lập trình bậc cao, vì vậy nó có thể được sử dụng để thiết kế một hệ thống lớn với sự tham gia của một nhóm nhiều người. Bên trong ngôn ngữ VHDL có nhiều tính năng hỗ trợ việc quản lý, thử nghiệm và chia sẻ thiết kế. Và nó cũng cho phép dùng lại các phần đã có sẵn. Cảm ơn cô Nguyễn Thị Hồng Nhung đã hướng dẫn và giúp e hoàn thành môn học này, em xin chân thành cảm ơn, chúc cô và gia đình luôn mạnh khỏe, riêng cô em chúc cô luôn tươi trẻ và thành công trong công việc. Sinh viên thực hiện: Nguyễn Đình Hồng Lớp ĐT5AHN Nội dung 1. Quy trình thiết kế mạch bằng VHDL Đây là phần mềm đóng gói tích hợp đầy đủ phục vụ cho thiết kế logic với các linh kiện logic khả trình PLD của Altera, gồm các dòng APEX, Cyclone, FLEX, MAX, Stratix... Quartus cung cấp các khả năng thiết kế logic sau: Môi trường thiết kế gồm các bản vẽ, sơ đồ khối, công cụ soạn thảo các ngôn ngữ: AHDL, VHDL, và Verilog HDL. Thiết kế LogicLock. Là công cụ mạnh để tổng hợp logic. Khả năng mô phỏng chức năng và thời gian. Phân tích thời gian. Phân tích logic nhúng với công cụ phân tích SignalTap II. Cho phép xuất, tạo và kết nối các file nguồn để tạo ra các file chương trình. Tự động định vị lỗi. Khả năng lập trình và nhận diện linh kiện. Phần mềm Quartus II sử dụng bộ tích hợp NativeLink với các công cụ thiết kế cung cấp việc truyền thông tin liền mạch giữa Quartus với các công cụ thiết kế phần cứng EDA khác. Quartus II cũng có thể đọc các file mạch (netlist) EDIF chuẩn, VHDL và Verilog HDL cũng như tạo ra các file netlist này. Quartus II có môi trường thiết kế đồ họa giúp nhà thiết kế dễ dàng viết mã, biên dịch, soát lỗi, mô phỏng... Với Quartus có thể kết hợp nhiều kiểu file trong 1 dự án thiết kế phân cấp. Có thể dùng bộ công cụ tạo sơ đồ khối (Quartus Block Editor) để tạo ra sơ đồ khối mô tả thiết kế ở mức cao, sau đó dùng các sơ đồ khối khác, các bản vẽ như: AHDL Text Design Files (.tdf), EDIF Input Files (.edf), VHDL Design Files (.vhd), and Verilog HDL Design Files (.v) để tạo ra thành phần thiết kế mức thấp. Quartus II cho phép làm việc với nhiều file ở cùng thời điểm, soạn thảo file thiết kế trong khi vẫn có thể biên dịch hay chạy mô phỏng các dự án khác. Công cụ biên dịch Quartus II nằm ở trung tâm hệ thống, cung cấp quy trình thiết kế mạnh cho phép tùy biến để đạt được thiết kế tối ưu trong dự án. Công cụ định vị lỗi tự động và các bản tin cảnh báo khiến việc phát hiện và sửa lỗi trở nên đơn giản hơn. Sau khi cài Quartus II, giao diện như hình vẽ:
Trang 1TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP HÀ NỘI
NGÀNH: ĐIỆN- ĐIỆN TỬ
BÁO CÁO THỰC HÀNH
MÔN: THỰC TẬP NGHỀ NÂNG CAO NGÀNH ĐIỆN TỬ TRUYỀN THÔNG
Giảng viên hướng dẫn: Nguyễn Thị Hồng Nhung
NỘI DUNG
I. Lời nói đầu
II. Nội dung
III. Kết quả
IV. Kết Luận
LỜI NÓI ĐẦU
VHDL là ngôn ngữ mô tả phần cứng cho các mạch tích hợp tốc độ rất cao VHDL được phát triển để giải quyết các khó khăn trong việc phát triển, thay đổi và lập tài liệu cho các hệ thống số VHDL là một ngôn ngữ độc lập không gắn với bất kỳ một phương pháp thiết kế, một bộ mô tả hay công nghệ phần cứng nào Người thiết kế
có thể tự do lựa chọn công nghệ, phương pháp thiết kế trong khi chỉ sử dụng một ngôn ngữ duy nhất VHDL có một số ưu điểm hơn so các ngôn ngữ mô phỏng phần cứng khác hẳn là:
- Khả năng được hỗ trợ bởi nhiều công nghệ và nhiều phương pháp thiết kế:
VHDL cho phép thiết kế bằng nhiều phương pháp ví dụ phương pháp thiết kế từ trên xuống, hay từ dưới lên dựa vào các thư viện sẵn có VHDL cũng hỗ trợ cho nhiều loại công cụ xây dựng mạch như sử dụng công nghệ đồng bộ hay không đồng bộ, sử dụng ma trận lập trình được hay sử dụng mảng ngẫu nhiên
- Tính độc lập với công nghệ: VHDL hoàn toàn độc lập với công nghệ chế
tạo phần cứng Một mô tả hệ thống dùng VHDL thiết kế ở mức cổng có thể được
1
Trang 2chuyển thành các bản tổng hợp mạch khác nhau tuỳ thuộc công nghệ chế tạo phần cứng mới ra đời nó được áp dụng ngay cho các hệ thống đã thiết kế
- Khả năng mô tả mở rộng: VHDL cho phép mô tả hoạt động của phần cứng
từ mức hệ thống số cho đến mức cổng VHDL có khả năng mô tả hoạt động của hệ thống trên nhiều mức nhưng chỉ sử dụng một cú pháp chặt chẽ thống nhất cho mọi mức Như thế ta có thể mô phỏng một bản thiết kế bao gồm cả các hệ con được mô
tả chi tiết
- Khả năng trao đổi kết quả: Vì VHDL là một tiêu chuẩn được chấp nhận,
nên Một mô hình VHDL có thể chạy trên mọi bộ mô tả đáp ứng được tiêu chuẩn VHDL Các kết quả mô tả hệ thống có thể được trao đổi giữa các nhà thiết kế sử dụng công cụ thiết kế khác nhau nhưng cùng tuân theo tiêu chuẩn VHDL Cũng như một nhóm thiết kế có thể trao đổi mô tả mức cao của các hệ thống con trong một hệ thống lớn (trong đó các hệ con đó được thiết kế độc lập)
- Khả năng hỗ trợ thiết kế mức lớn và khả năng sử dụng lại các thiết kế:
VHDL được phát triển như một ngôn ngữ lập trình bậc cao, vì vậy nó có thể được
sử dụng để thiết kế một hệ thống lớn với sự tham gia của một nhóm nhiều người Bên trong ngôn ngữ VHDL có nhiều tính năng hỗ trợ việc quản lý, thử nghiệm và chia sẻ thiết kế Và nó cũng cho phép dùng lại các phần đã có sẵn Cảm ơn cô Nguyễn Thị Hồng Nhung đã hướng dẫn và giúp e hoàn thành môn học này, em xin chân thành cảm ơn, chúc cô và gia đình luôn mạnh khỏe, riêng cô em chúc cô luôn tươi trẻ và thành công trong công việc
Sinh viên thực hiện: Nguyễn Đình Hồng Lớp ĐT5AHN
Nội dung
1. Quy trình thiết kế mạch bằng VHDL
Đây là phần mềm đóng gói tích hợp đầy đủ phục vụ cho thiết kế logic với các linh kiện logic khả trình PLD của Altera, gồm các dòng APEX, Cyclone, FLEX, MAX, Stratix Quartus cung cấp các khả năng thiết kế logic sau:
Môi trường thiết kế gồm các bản vẽ, sơ đồ khối, công cụ soạn thảo các ngôn ngữ: AHDL, VHDL, và Verilog HDL
Thiết kế LogicLock
2
Trang 3 Là công cụ mạnh để tổng hợp logic.
Khả năng mô phỏng chức năng và thời gian
Phân tích thời gian
Phân tích logic nhúng với công cụ phân tích SignalTap@ II
Cho phép xuất, tạo và kết nối các file nguồn để tạo ra các file chương trình
Tự động định vị lỗi
Khả năng lập trình và nhận diện linh kiện
Phần mềm Quartus II sử dụng bộ tích hợp NativeLink@ với các công cụ thiết
kế cung cấp việc truyền thông tin liền mạch giữa Quartus với các công cụ thiết kế phần cứng EDA khác
Quartus II cũng có thể đọc các file mạch (netlist) EDIF chuẩn, VHDL và Verilog HDL cũng như tạo ra các file netlist này
Quartus II có môi trường thiết kế đồ họa giúp nhà thiết kế dễ dàng viết mã, biên dịch, soát lỗi, mô phỏng
Với Quartus có thể kết hợp nhiều kiểu file trong 1 dự án thiết kế phân cấp Có thể dùng bộ công cụ tạo sơ đồ khối (Quartus Block Editor) để tạo ra sơ đồ khối mô tả thiết kế ở mức cao, sau đó dùng các sơ đồ khối khác, các bản vẽ như: AHDL Text
Design Files (.tdf), EDIF Input Files (.edf), VHDL Design Files (.vhd), and
Verilog HDL Design Files (.v) để tạo ra thành phần thiết kế mức thấp
Quartus II cho phép làm việc với nhiều file ở cùng thời điểm, soạn thảo file thiết kế trong khi vẫn có thể biên dịch hay chạy mô phỏng các dự án khác Công cụ biên dịch Quartus II nằm ở trung tâm hệ thống, cung cấp quy trình thiết kế mạnh cho phép tùy biến để đạt được thiết kế tối ưu trong dự án Công cụ định vị lỗi tự động
và các bản tin cảnh báo khiến việc phát hiện và sửa lỗi trở nên đơn giản hơn
Sau khi cài Quartus II, giao diện như hình vẽ:
3
Trang 4Hình 1.1 Giao diện Quartus II.
Mạnh điện trong Quartus có thể được thiết kế theo các cách sau:
a Sơ đồ khối (Block Diagram).
Trong cách mô tả này, mạch điện tạo nên từ các cổng logic rời rạc, hay các hàm gồm nhiều cổng logic tích hợp (megafunctions) Để vẽ mạch theo cách này, nhấn
New, chọn tab Device Design Files, chọn Block Diagram/ Schematic File, hiện:
Các công cụ vẽ mạch
Cửa sổ vẽ
4
Trang 5Hình vẽ
Hình 1.2 Giao diện Block Editor
Nhấn chọn Symbol Tool để hiện các cổng logic hay các hàm Megafuntions
Các cổng logic hay hàm
Vùng hiển thị cổng logic hay hàm
5
Trang 6Hình vẽ Các cổng logic, các hàm
Hình 1.3 Cửa sổ chọn đường dẫn và tên dự án
Khi đã chọn xong các cổng logic hay hàm thì dùng các công cụ nối dây để vẽ mạch hoàn chỉnh
b Tạo một Project
Bước 1 : Chọn mục File > New Project Wizard để mở cửa sổ tạo mới dự án
giống như Hình1.4 Chú ý là dự án cần có tên giống với tên của thực thể
thiết kế, nó cho thấy thực thể là mức đỉnh Chọn tên light làm tên cho dự án và thực thể mức đỉnh, nhấp chọn Next.
6
Trang 7Hình 1.4 Cửa sổ chọn đường dẫn và tên dự án
Bước 2 : Trong cửa sổ Family & Device Settings, chúng ta sẽ chọn loại chip, là
chip FPGA Cyclone EP2C20F484C7N có trên kit DE1 mà chúng ta sử dụng
trong bài thí nghiệm Nhấp chọn Next để chuyển sang cửa sổ chọn kế tiếp.
Bước 3 : Trong của sổ kế tiếp, chúng ta có thể chọn lựa bất kỳ công cụ của hãng
thứ ba nào cần dùng Công cụ CAD thông dụng dùng cho phần mềm thiết kế mạch điện tử là EDA tools Vì chúng ta không cần thay đổi gì trong việc lựa
chọn công cụ, nhấp chọn Next.
Bước 4 : Quan sát bảng tổng kết các thiết lập vừa thực hiện Nhấp chọn Finish
để quay trở về màn hình chính của phần mềm Quartus II
7
Trang 8Hình 1.5 Cửa sổ chọn loại chip FPGA dùng cho dự án
c Nhập thiết kế dùng mã VHDL
Trong bài thí nghiệm này, chúng ta sẽ tạo một mạch điều khiển đèn hai chiều như trong Hình 1.5 Mạch có thể dùng để điều khiển một đèn LED khi một
trong hai chuyển mạch x
1 hoặc x 2 đóng, tương ứng với mức logic “1” Chú ý
rằng chỉ cần dùng hàm XOR cho hai đầu vào x
1 và x 2, tuy nhiên chúng ta sẽ
xây dựng lại bằng các cổng logic rời rạc
Hình 1.5 Mạch logic điều khiển đèn và bảng chân lý của mạch
8
Trang 9Bước 1: Chọn mục File > New, trong cửa sổ New, chọn VHDL File, và nhấp
chọn OK Sau khi nhấp chọn OK thì cửa sổ soạn thảo sẽ hiện ra Nhập vào mã VHDL như dưới đây vào trong cửa sổ soạn thảo văn bả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;
Bước 2: Chọn mục File > Save As để mở cửa sổ Save As Trong phần Save as
type chọn VHDL File Trong phần File name nhập light Nhấp chọn Save để đưa
tệp này vào trong thư mục của dự án
d Thêm các tệp thiết kế vào một dự án
Bước 1: Chọn mục Assignments > Settings > Files, điều này dẫn đến cửa sổ như
trong Hình 1.6 Một cách khác là chọn Project > Add/Remove Files trong Project
Nếu bạn dùng trình soạn thảo để tạo tệp và chọn vào hộp có nhãn Add file to current
project, thì tệp light.vhd đã có trong dự án, ngược lại tệp này cần thêm vào dự án.
9
Trang 10Hình 1.6 Cửa sổ các cài đặt có thể dùng để nhập tệp thiết kế vào dự án
Bước 2: Nhấp chọn nút … bên cạnh phần File name để có cửa sổ chọn tệp cần
thêm vào Nhấp chọn tệp light.vhd và nhấp chọn Open Tệp đã chọn sẽ hiện tên trên phần File name Nhấp chọn Add và OK để đưa tệp này vào dự án.
e Biên dịch mã VHDL
Bước 1 : Nhấp chọn mục Processing > Start Complication Biên dịch thành
công (hay không thành công) sẽ được thông báo trên hộp thoại bung ra sau khi quá trình biên dịch kết thúc Xác nhận bằng cách nhấp nút OK
Bước 2: Khi biên dịch hoàn thành, một báo cáo biên dịch được đưa ra Cửa sổ
này cũng có thể mở ra bất kỳ lúc nào bằng cách nhấp chọn Processing >
Complication Report Trong báo cáo này bao gồm một số danh mục ở bên trái
cửa sổ, nhấp vào các danh mục này để thấy thông tin chi tiết của danh mục này hiện lên ở bên phải cửa sổ
f Sửa các lỗi
Bước 1 : Mở tệp light.vhd, dòng có câu lệnh gán biểu thức logic cho f, ta bỏ dấu
chấm phẩy ở cuối dòng lệnh, lưu thay đổi với tệp light.vhd rồi biên dịch lại dự
án Lúc này phần mềm sẽ thông báo là biên dịch không thành công và báo cáo tổng hợp đưa ra kết quả biên dịch dự án bị hỏng
10
Trang 11Bước 2 : Chọn mục Analysis & Synthesis > Messages để hiển thị thông báo lỗi
Nhấp đôi vào thông báo lỗi đầu tiên, dòng lệnh lỗi sẽ được đánh dấu trên trình soạn thảo văn bản, sửa lại cho đúng rồi biên dịch lại dự án
g Gán chân
Chúng ta sẽ gán các chuyển mạch gạt SW 0 và SW 1 làm các đầu vào x 1 và x 2 cho
mạch điện Các chuyển mạch này nối với các chân L 22 và L 21 của FPGA Và
chúng ta sẽ gán đầu ra f tới LEDG 0 , được kết nối với chân U 22 của FPGA.
Bước 1 : Nhấp chọn Assignments > Assignment Editor Trong Category chọn
Pin Nhấp đôi vào <<new>> Nhấp chọn x 1 từ danh sách trải xuống làm chân
đầu tiên được gán Tiếp đến nhấp đôi vào hộp bên phải hộp dành cho x 1 (cột
Location) Chọn chân PIN_L 22 từ danh mục hoặc có thể gõ trực tiếp L 22 vào hộp Location.
Hình 1.7 Cửa sổ Assignment Editor dùng để gán chân
Bước 2: Tương tự như trên, thực hiện gán chân cho đầu vào x 2 cho chân L 21 và
đầu ra f cho chân U 22.
Bước 3: Sau khi hoàn thành việc gán chân, nhấp chọn File > Save Đóng cửa
sổ Assignment Editor, nhấp chọn Yes và biên dịch lại mạch.
h Mô phỏng mạch thiết kế
11
Trang 12Bước 1 : Mở cửa sổ Waveform Editor bằng cách nhấp File > New, trong cửa sổ
chọn dạng tệp, chọn Vector Waveform File và nhấp OK.Cửa sổ Waveform
Editor sẽ hiện ra trên giao diện chính Lưu tệp này với tên Light.vwf.
Bước 2: Nhấp chọn Edit > End Time và nhập vào 200 ns trong hộp thoại bung
ra, điều này cho phép thời gian mô phỏng từ 0 dến 200 ns Nhấp chọn View >
Fit in Window để nhìn thấy toàn bộ phần mô phỏng từ 0 đến 200 ns.
Bước 3 : Nhấp chọn Edit > Insert > Insert Node or Bus để mở cửa sổ nhập các
đầu vào ra Nhấp nút Node Finder để mở cửa sổ như trong hình 1.8, đặt phần
Filter là Pins: all Nhấp chọn nút List để tìm các đầu vào và ra trên phần bên trái cửa sổ
Bước 4 : Nhấp chọn các đầu vào ra bên cửa sổ bên trái rồi nhấp nút > để đưa
đầu tín hiệu đó vào dạng sóng kiểm tra Khi đã có đủ các đầu vào và ra, nhấp
chọn OK để quay trở lại cửa sổ Waveform Editor.
Bước 5 : Đặt x
1 bằng ‘0’ trong đoạn từ 0 ns đến 100 ns, tiếp đến đặt x 1 bằng ‘1’
trong đoạn từ 100 ns đến 200 ns bằng cách đặt chuột ở vị trí bắt đầu đoạn này
và nhấp kéo đến hết để đánh dấu vùng đặt giá trị, và chọn giá trị ‘1’ trên thanh
công cụ Tương tự như vậy đặt x
2 bằng 1 từ 50 ns đến 100 ns và từ 150 ns đến
200 ns
Hình 1.8 Cửa sổ chọn các tín hiệu vào ra đưa vào dạng sóng mô phỏng
12
Trang 13Bước 6: Thực hiện mô phỏng
Mô phỏng chức năng
Nhấp chọn Assignments > Settings Bên trái của cửa sổ Settings nhấp chọn
Simulator Settings để có cửa sổ như trong Hình 1.9, chọn Functional trong mục
chọn chế độ mô phỏng, và nhấp OK
Hình 1.9 Dạng sóng kiểm tra trước khi mô phỏng
13
Trang 14Hình 1.10 Chọn chế độ mô phỏng chức năng cho trình mô phỏng
- Nhấp chọn Processing > Generate Functional Simulation Netlist Sau đó nhấp chọn Processing > Start Simulation để thực hiện mô phỏng Kiểm tra dạng sóng đầu ra f có đúng theo chức năng của mạch hay không.
Hình 1.11 Dạng sóng mô phỏng chức năng
Mô phỏng thời gian
14
Trang 15- Nhấp chọn Assignments > Settings Bên trái của cửa sổ Settings nhấp chọn
Simulator Settings để có cửa sổ như trong Hình 1.10, chọn Timing trong mục
chọn chế độ mô phỏng, và nhấp OK
- Sau đó thực hiện mô phỏng theo cách vừa thực hiện như trên, quan sát
dạng sóng đầu ra f và nhận xét sự khác biệt so với dạng sóng này khi thực hiện
Bài 3: Thiết kế mạch đa hợp 4 đầu vào ,1 đầu ra , 2 đầu lựa chọn
Bài 4: Hãy thiết kế mạch đa hợp 16 ngõ vào, 1 ngõ ra và 4 ngõ lựa chọn
Bài 5: Thiết kế mạch đếm BCD từ 000-999 đếm lên, đếm xuống được điều khiển bằng tín hiệu Ud(Ud= 0 thì đếm lên , Ud = 1 thì đếm xuống) có 1 tín hiệu Clk, một tín hiệu Clr và có giải mã hiển thị ra 3 LED 7 đoạn dùng quét
Câu 6: Thiết kế mạch giải mã bên trong có 4 mạch giải mã 2 đường sang 4 đường với đầu ra tích cực ở mức thấp
Câu 7: Thiết kế mạch chuyển đổi số nhị phân 8 bit thành số BCD
Câu 8: Thiết kế flip-flop T
Bài 9: Mạch giải đa hợp 1 đầu vào 8 đầu ra 3 đầu lựa chọn
Bài 10: Thiết kế thanh ghi dịch giống như IC 74164
15
Trang 163. Các bước thực hiện:
A. Tạo 1 New Project Wizard:
Bước 1 : Mở phần mềm lên click đúp vào biểu tượng ở desktop
Sau khi mở phần mềm lên thì đây là giao diện chính của phần mềm:
Bước 2: : Chọn mục File > New Project Wizard để mở cửa sổ tạo mới dự án
giống như sau Chú ý là dự án cần có tên giống với tên của thực thể ví dụ ở đây mình đặt là baitap
16
Trang 17Sau khi chọn đường dẫn lưu tệp và tên tệp tên thực thể ấn Next
17
Trang 18Cửa sổ mới hiện ra chọn Next tiếp
Bước 3 : Trong của sổ kế tiếp, chúng ta có thể chọn lựa bất kỳ công cụ của hãng
thứ ba nào cần dùng Công cụ CAD thông dụng dùng cho phần mềm thiết kế
18
Trang 19mạch điện tử là EDA tools Vì chúng ta không cần thay đổi gì trong việc lựa
chọn công cụ, nhấp chọn Next.
Cửa sổ mới hiện ra ta ấn Next tiếp theo:
19
Trang 20Bước 4 : Quan sát bảng tổng kết các thiết lập vừa thực hiện Nhấp chọn Finish
để quay trở về màn hình chính của phần mềm Quartus II
B. Tiến hành vẽ sơ đồ nguyên lý ( sơ đồ khối ) :
Mạch nguyên lý như sau, 8 đầu vào I0=>I7, 3 đầu ra Q0=>Q2 ở mức tích cực thấp
Bước 1: Sơ đồ khối (Block Diagram).
20
Trang 21Trong cách mô tả này, mạch điện tạo nên từ các cổng logic rời rạc, hay các hàm gồm nhiều cổng logic tích hợp (megafunctions) Để vẽ mạch theo cách này, nhấn
New, chọn tab Device Design Files, chọn Block Diagram/ Schematic File, hiện:
Cửa sổ làm việc hiện ra:
21
Trang 22Bước 2 : Thực hiện lấy linh kiện và vẽ sơ đồ
+ Các công cụ thiết kế:
+ Và tìm các linh kiện như sau : chíp 7428, 8 input, 4 output
22
Trang 23Lấy các linh kiện ra: 23
Trang 24Sau khi nối dây xong ta được sơ đồ như sau:
Bước 3: Lưu file lại với tên là: baitap
24
Trang 25C. Tạo file lập trình
Bước 1: Chọn mục File > New, trong cửa sổ New, chọn VHDL File, và nhấp
chọn OK Sau khi nhấp chọn OK thì cửa sổ soạn thảo sẽ hiện ra Nhập vào mã VHDL như dưới đây vào trong cửa sổ soạn thảo văn bản
25
Trang 26Giao diện làm việc
Bước 2: Tiến hành nhập lập trình cho mạch
26
Trang 27Bước 3: Tiến hành lưu file ( tên baitap.vhd )
Bước 4: Biên dịch mã VHDL
27
Trang 28Quá trình biên dịch đang chạy, đợi chạy xong 100 % thì được
Quá trình biên dịch xong, có thông báo có 6 cảnh báo và không có lỗi Nhấn OK để tiếp tục.
28
Trang 29Bước 5: Khi biên dịch hoàn thành, một báo cáo biên dịch được đưa ra Cửa sổ
này cũng có thể mở ra bất kỳ lúc nào bằng cách nhấp chọn Processing >
Complication Report Trong báo cáo này bao gồm một số danh mục ở bên trái
cửa sổ, nhấp vào các danh mục này để thấy thông tin chi tiết của danh mục này hiện lên ở bên phải cửa sổ
Bước 6: Nếu có lỗi thì tiến hành sửa lỗi
+ Mở tệp light.vhd, dòng có câu lệnh gán biểu thức logic cho f, ta bỏ dấu chấm phẩy ở cuối dòng lệnh, lưu thay đổi với tệp light.vhd rồi biên dịch lại dự án Lúc
này phần mềm sẽ thông báo là biên dịch không thành công và báo cáo tổng hợp đưa ra kết quả biên dịch dự án bị hỏng
+ Chọn mục Analysis & Synthesis > Messages để hiển thị thông báo lỗi Nhấp
đôi vào thông báo lỗi đầu tiên, dòng lệnh lỗi sẽ được đánh dấu trên trình soạn thảo văn bản, sửa lại cho đúng rồi biên dịch lại dự án
D. Gán chân
+ Chúng ta sẽ gán các chuyển mạch gạt SW 0 và SW 1 làm các đầu vào x 1 và x 2 cho
mạch điện Các chuyển mạch này nối với các chân L 22 và L 21 của FPGA Và
29
Trang 30+ Nhấp chọn Assignments > Assignment Editor Trong Category chọn Pin Nhấp
đôi vào <<new>> Nhấp chọn x 1 từ danh sách trải xuống làm chân đầu tiên được
gán Tiếp đến nhấp đôi vào hộp bên phải hộp dành cho x 1 (cột Location) Chọn chân PIN_L 22 từ danh mục hoặc có thể gõ trực tiếp L 22 vào hộp Location.
+ Tương tự như trên, thực hiện gán chân cho đầu vào x 2 cho chân L 21 và
đầu ra f cho chân U 22.
+ Sau khi hoàn thành việc gán chân, nhấp chọn File > Save Đóng cửa sổ
Assignment Editor, nhấp chọn Yes và biên dịch lại mạch.
Cửa sổ mới mở ra
30
Trang 31Sau khi đã add chân xong ta thấy sơ đồ mạch đã có các chân vừa add
mạch thiết kế
31