Частина тексту файла (без зображень, графіків і формул):
Міністерство освіти та науки України Національний університет «Львівська політехніка»
ЗВІТ
з лабораторної роботи №1
з дисципліни:« Основи проектування цифрових засобів на ПЛІС»
на тему: «САПР Xilinx Webpack. Проектування найпростіших вузлів»
Львів-2017
Тема: САПР Xilinx Webpack. Проектування найпростіших вузлів.
Мета: засвоєння навичок роботи у середовищі Xilinx WebPack, навчитись створювати проекти в САПР Xilinx WebPack.
Задача: спроектувати схему згідно варіанту, зробити VHDL-опис схеми, провести тести та порівняти результат.
Варіант:
5. F = /(a & b) & (/d ^ c) & e
Опис етапів роботи:
Я створив новий проект, вибрав потрібні елементи та розмістив їх в робочій області схемного редактора. Зробив між ними зв’язки.
/Рис. 1. Логічна схема для реалізації заданої ФАЛ
У вікні Processes запустив на виконання процес Synthesize. У процесі синтезу з файлів HDL-описів проектованого пристрою зформувався файл списку з'єднань. Відкрив звіт про результати синтезу (View Text Report).
=========================================================================
* Final Report *
=========================================================================
Final Results
RTL Top Level Output File Name : ivk_1.ngr
Top Level Output File Name : ivk_1
Output Format : NGC
Optimization Goal : Speed
Keep Hierarchy : No
Design Statistics
# IOs : 6
Cell Usage :
# BELS : 5
# AND2 : 2
# AND2B1 : 1
# INV : 1
# XOR2 : 1
# IO Buffers : 6
# IBUF : 5
# OBUF : 1
=========================================================================
Device utilization summary:
---------------------------
Selected Device : 4vlx15sf363-12
Number of Slices: 1 out of 6144 0%
Number of 4 input LUTs: 1 out of 12288 0%
Number of IOs: 6
Number of bonded IOBs: 6 out of 240 2%
---------------------------
Partition Resource Summary:
---------------------------
No Partitions were found in this design.
---------------------------
=========================================================================
TIMING REPORT
NOTE: THESE TIMING NUMBERS ARE ONLY A SYNTHESIS ESTIMATE.
FOR ACCURATE TIMING INFORMATION PLEASE REFER TO THE TRACE REPORT
GENERATED AFTER PLACE-and-ROUTE.
Clock Information:
------------------
No clock signals found in this design
Asynchronous Control Signals Information:
----------------------------------------
No asynchronous control signals found in this design
Timing Summary:
---------------
Speed Grade: -12
Minimum period: No path found
Minimum input arrival time before clock: No path found
Maximum output required time after clock: No path found
Maximum combinational path delay: 6.833ns
Timing Detail:
--------------
All values displayed in nanoseconds (ns)
=========================================================================
Timing constraint: Default path analysis
Total number of paths / destination ports: 5 / 1
-------------------------------------------------------------------------
Delay: 6.833ns (Levels of Logic = 6)
Source: ivk_d (PAD)
Destination: ivk_res (PAD)
Data Path: ivk_d to ivk_res
Gate Net
Cell:in->out fanout Delay Delay Logical Name (Net Name)
---------------------------------------- ------------
IBUF:I->O 1 0.754 0.266 ivk_d_IBUF (ivk_d_IBUF)
INV:I->O 1 0.269 0.554 XLXI_3 (ivk_not_d)
XOR2:I0->O 1 0.147 0.514 XLXI_2 (ivk_c_xor_not_d)
AND2B1:I1->O 1 0.147 0.514 XLXI_5 (ivk_not__a_and_b_and_c_xor_not_d)
AND2:I1->O 1 0.147 0.266 XLXI_4 (ivk_res_OBUF)
OBUF:I->O 3.255 ivk_res_OBUF (ivk_res)
----------------------------------------
Total 6.833ns (4.719ns logic, 2.114ns route)
(69.1% logic, 30.9% route)
=========================================================================
Total REAL time to Xst completion: 8.00 secs
Total CPU time to Xst completion: 7.99 secs
-->
Total memory usage is 252364 kilobytes
Рис. 2. Звіт про результати синтезу
/
Рис. 3. Функціональна схема
/Рис. 4. Технологічна схема
/
Рис. 5. Створення тестбенчу
/
Рис. 6. Отримані часові діаграми імплементації модуля проекту,
реалізованого за допомогою бібліотечних примітивів
/
Рис. 7. Створення нового модуля проекту реалізації ФАЛ
/
Рис. 8. Визначення входів/виходів VHDL моделі проекту
=========================================================================
* Final Report *
=========================================================================
Final Results
RTL Top Level Output File Name : ivk_v_1.ngr
Top Level Output File Name : ivk_v_1
Output Format : NGC
Optimization Goal : Speed
Keep Hierarchy : No
Design Statistics
# IOs : 6
Cell Usage :
# BELS : 3
# GND : 1
# LUT4 : 1
# MUXF5 : 1
# IO Buffers : 6
# IBUF : 5
# OBUF : 1
=========================================================================
Device utilization summary:
---------------------------
Selected Device : 4vlx15sf363-12
Number of Slices: 1 out of 6144 0%
Number of 4 input LUTs: 1 out of 12288 0%
Number of IOs: 6
Number of bonded IOBs: 6 out of 240 2%
---------------------------
Partition Resource Summary:
---------------------------
No Partitions were found in this design.
---------------------------
=========================================================================
TIMING REPORT
NOTE: THESE TIMING NUMBERS ARE ONLY A SYNTHESIS ESTIMATE.
FOR ACCURATE TIMING INFORMATION PLEASE REFER TO THE TRACE REPORT
GENERATED AFTER PLACE-and-ROUTE.
Clock Information:
------------------
No clock signals found in this design
Asynchronous Control Signals Information:
----------------------------------------
No asynchronous control signals found in this design
Timing Summary:
---------------
Speed Grade: -12
Minimum period: No path found
Minimum input arrival time before clock: No path found
Maximum output required time after clock: No path found
Maximum combinational path delay: 5.260ns
Timing Detail:
--------------
All values displayed in nanoseconds (ns)
=========================================================================
Timing constraint: Default path analysis
Total number of paths / destination ports: 5 / 1
-------------------------------------------------------------------------
Delay: 5.260ns (Levels of Logic = 4)
Source: ivk_d (PAD)
Destination: ivk_res (PAD)
Рис. 9. Звіт про результати синтезу
/
Рис. 10. Функціональна схема
/
Рис. 11. Технологічна схема
/
Рис. 12. Отримані симуляційні часові діаграми імплементації модуля проекту,
реалізованого з допомогою VHDL опису
Таблиця істинності ФАЛ
a
b
c
d
e
F = /(a & b) & (/d ^ c) & e
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
1
0
0
0
0
0
1
1
0
0
0
1
0
0
0
0
0
1
0
1
0
0
0
1
1
0
0
0
0
1
1
1
1
0
1
0
0
0
0
0
1
0
0
1
1
0
1
0
1
0
0
0
1
0
1
1
0
0
1
1
0
0
0
0
1
1
0
1
0
0
1
1
1
0
0
0
1
1
1
1
1
1
0
0
0
0
0
1
0
0
0
1
1
1
0
0
1
0
0
1
0
0
1
1
0
1
0
1
0
0
0
1
0
1
0
1
0
1
0
1
1
0
0
1
0
1
1
1
1
1
1
0
0
0
0
1
1
0
0
1
1
1
1
0
1
0
0
1
1
0
1
1
0
1
1
1
0
0
0
1
1
1
0
1
0
1
1
1
1
0
0
1
1
1
1
1
0
Висновок: на цій лабораторній роботі я засвоїв навички роботи у середовищі Xilinx WebPack, навчився створювати проекти в САПР Xilinx WebPack. Також я спроектував схему згідно варіанту, зробив VHDL опис схеми, провів тести та порівняв результат. У першому випадку я сам обираю елементи, які повинні бути в схемі і як їх створювати. У другому варіанті – я описую логіку роботи ПЛІС, а Xilinx сам обирає елементи для реалізації
Додаток
L_tb.vhd
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
USE ieee.numeric_std.ALL;
LIBRARY UNISIM;
USE UNISIM.Vcomponents.ALL;
ENTITY ivk_1_ivk_1_sch_tb IS
END ivk_1_ivk_1_sch_tb;
ARCHITECTURE behavioral OF ivk_1_ivk_1_sch_tb IS
COMPONENT ivk_1
PORT( ivk_a : IN STD_LOGIC;
ivk_b : IN STD_LOGIC;
ivk_c : IN STD_LOGIC;
ivk_d : IN STD_LOGIC;
ivk_e : IN STD_LOGIC;
ivk_res : OUT STD_LOGIC);
END COMPONENT;
SIGNAL ivk_a : STD_LOGIC:='0';
SIGNAL ivk_b : STD_LOGIC:='0';
SIGNAL ivk_c : STD_LOGIC:='0';
SIGNAL ivk_d : STD_LOGIC:='0';
SIGNAL ivk_e : STD_LOGIC:='0';
SIGNAL ivk_res : STD_LOGIC;
BEGIN
UUT: ivk_1 PORT MAP(
ivk_a => ivk_a,
ivk_b => ivk_b,
ivk_c => ivk_c,
ivk_d => ivk_d,
ivk_e => ivk_e,
ivk_res => ivk_res
);
ivk_a<=not ivk_a after 160 ns;
ivk_b<=not ivk_b after 80 ns;
ivk_c<=not ivk_c after 40 ns;
ivk_d<=not ivk_d after 20 ns;
ivk_e<=not ivk_e after 10 ns;
-- *** Test Bench - User Defined Section ***
tb : PROCESS
BEGIN
WAIT; -- will wait forever
END PROCESS;
-- *** End Test Bench - User Defined Section ***
END;l_mod1.vhd
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
-- Uncomment the following library declaration if using
-- arithmetic functions with Signed or Unsigned values
--use IEEE.NUMERIC_STD.ALL;
-- Uncomment the following library declaration if instantiating
-- any Xilinx primitives in this code.
--library UNISIM;
--use UNISIM.VComponents.all;
entity ivk_v_1 is
Port ( ivk_a : in STD_LOGIC;
ivk_b : in STD_LOGIC;
ivk_c : in STD_LOGIC;
ivk_d : in STD_LOGIC;
ivk_e : in STD_LOGIC;
ivk_res : out STD_LOGIC);
end ivk_v_1;
architecture Behavioral of ivk_v_1 is
begin
ivk_res<=(not(ivk_a and ivk_b)and (ivk_c xor not ivk_d))and ivk_e;
end Behavioral;