mirror of
https://github.com/MPSU/APS.git
synced 2025-09-15 17:20:10 +00:00
5.1 KiB
5.1 KiB
Создание базового проекта с прошивкой ПЛИС в Vivado
Создание проекта в Системе Автоматизированного Проектирования (САПР)
- Запустить Vivado 2019.2
- Нажать
Create Project - В открывшемся окне нажать Next
- Ввести название проекта (никаких пробелов и кириллических символов) → Выбрать папку для проектов (создать каталок на D:/) → Поставить галку
Create project subdirectory→ НажатьNext - Выбрать RTL Project → Поставить галку
Do not specify sources at this time→ Нажать Next - Выставить фильтры, для сужения списка ПЛИС:
- Family:
Artix 7 - Package:
CSG324, - Speed:
-1.
- Family:
- В списке выбрать ПЛИС
xc7a100tcsg324-1→ Нажать Next - Нажать Finish
- Закрыть Vivado
- Удалить папку
- Повторить все действия самостоятельно
Создание модуля на Verilog
- Создать новый Verilog файл, для этого в окне
Sourcesнажать на кнопку+ - В открывшемся окне выбрать
Add or create design source→ НажатьNext - Нажать
Create File→ В открывшемся окне ввести имя модуляtop→ НажатьOK→ В оставшемся окне нажатьFinish - В открывшемся окне НЕ вводить названия портов и сразу нажать OK → После чего подтвердить выбор
Yes - Двойным кликов в окне
Sourceоткрыть файлtop.v - Написать следующий код:
module top (
input clk,
input a,
input b,
output reg q
);
wire c;
assign c = a ^ b;
always @ (posedge clk) begin
q <= c;
end
endmodule
- Сохранить изменения
- Нажать
Open Elaborated Design - Нажать
Schematicв открывшемся списке - Проанализировать полученный результат (сопоставить с Verilog-описанием)
- Закрыть проект
Реализация простого проекта на отладочном стенде
- Создать новый проект
- Создать новый Verilog файл с названием basic
- Написать следующий код:
module basic (
input [15:0] SW,
output [15:0] LED
);
assign LED[0] = SW[0] & SW[1];
assign LED[2] = SW[2] | SW[3];
assign LED[4] = SW[4] ^ SW[5];
assign LED[10:6] = ~SW[10:6];
assign LED[13:11] = {SW[11], SW[12], SW[13]};
assign LED[15:14] = { 2{SW[14]} };
endmodule
- Сохранить изменения
- В окне Sources нажать на кнопку
+ - В открывшемся окне выбрать
Add or create constraints→ Нажать Next - Нажать
Create File→ В открывшемся окне ввести название → НажатьOK→Finish - В окне
Sourceв открывающемся спискеConstraintsнайти только что созданный файл и открыть его дя редактирования двойным щелчком - Скопировать содержимое файла констрейнов с официального сайта и вставить в только что созданный → Найти строки посвященные SW и LED и раскомментировать их → Сохранить изменения
Run SynthesisRun Implementation- После успешной имплементации нажимаем
Generate Bitstreamдля генерации файла прошивки - Аккуратно достаем и подключаем стенд к компьютеру → Включаем питание на плате
- Нажимаем
Open Hardware Manager(подGenerate Bitstream) - Вместо окна
Sourceбудет отображаться окноHardware, в нем необходимо нажать кнопкуAuto Connect(единственная активная кнопка) → В окне появится подключенное устройство - Нажать правой кнопкой на устройстве
xc7a100t_0→ Выбрать пункт менюProgram Device - В открывшемся окне нажать
Program - Сопоставить поведение отладочной платы с Verilog-описанием
