برنامه ساختن کتابخانه در ISE

یک پروژه جدید در نرم افزار ISE ایجاد می کنیم:

 .1برای اینکار طبق شکل زیر گزینه Project>New Source را از menu bar انتخاب می کنیم:

2. در پنجره باز شده طبق شکل زیر قسمت VHDL Library را انتخاب کرده و در File name نام Library مورد نظر را وارد می کنیم و گزینه Next و سپس finish را کلیک می کنیم:

 

3. حال شما می توانید کتابخانه ساخته شده را در sources window ببینید:

4. ساختن Package جدید:

در پنجره New source قسمت VHDL package را انتخاب می کنیم و مثل مرحله قبل عمل نام گذاری را انجام می دهیم:

5. درقسمت sources محتوای برنامه را مشاهده می کنیم:

6. با انتخاب add source میتوانیم package را به کتابخانه اضافه کنیم:

 

8. حال محتوای Package را می بینیم:

library IEEE;
use IEEE.STD_LOGIC_1164.all;

package OR_XOR_AND is 

            type newtype  is
                    record
                          type_1        : std_logic_vector(3 downto 0);
                          type_2        : std_logic;
                   end record;

            -- constant declaration

             constant and_lenght               : integer := 3;

            -- fonction and procedure declaration

             function M_OR    (signal input1,input2: in std_logic_vector ) return std_logic_vector; 

             function M_AND (signal input1,input2: in std_logic_vector(3 downto 0) ) return       std_logic_vector;

             procedure M_XOR  (signal input1,input2: in std_logic_vector(3 downto 0); 
                                                          signal output:  out std_logic_vector(3 downto 0));


  end OR_XOR_AND;

 

package body OR_XOR_AND is

-- function example 1 
function M_OR    (signal input1,input2: in std_logic_vector ) return std_logic_vector is
variable temp     : std_logic_vector(input1'range);
     begin
          for I in input1'range loop
               temp(I) := input1(I) or input2(I);
          end loop;
         return temp; 
    end M_OR;

-- function example 2 
function M_AND (signal input1,input2: in std_logic_vector(3 downto 0) ) return std_logic_vector is
variable temp     : std_logic_vector(and_lenght downto 0);
       begin
            for I in 0 to input1'high loop
                   temp(I) := input1(I) and input2(I);
            end loop;
           return temp; 
      end M_AND;

-- Procedure example 
procedure M_XOR   (signal input1,input2: in std_logic_vector(3 downto 0); signal output: out std_logic_vector(3 downto0)) is
variable temp     : newtype ;
      begin
           for I in 0 to  3 loop
                 temp.type_1(I) := input1(I) xor input2(I);
           end loop;
          output<= temp.type_1 ;
      end  M_XOR;

end OR_XOR_AND;

9. کد های بالا را می توانید به پکیج اضافه کنید:

10.در این قسمت با Modelsim به سر وقت simulate برنامه می رویم:

 

 

11. مطابق شکل گزینه  a New Library dialog box type را در نظر می گیریم ویک نام برای آن انتخاب می کنیم:


 

12. از قسمت منوبار Select Compile>Compile را انتخاب می کنیم:

 

13. در پنجره Compile Source Files کتابخانه  مورد نظرتان را از قسمت  library part انتخاب کرده و پکیج تان را انتخاب کنید. حال  compile and Done را کلیک کرده تا کامپایل انجام شود.

14. به این ترتیب شما یک کتابخانه جدید می سازید و پکیج تان را در کتابخانه کامپایل می کنید. حال شما می توانید کتابخانه تان را با استفاده از کد تستی که در بخش قبل ساخته اید، شبیه سازی کنید.

Select File>New project from menu bar

15. 


In create Project dialog box type a meaningful name (whatever you want ) . Type work in Default Library Name field and determine the project

location where the project will be saved in Project Location Field. Click Ok to complete the project.

Note: You don't confuse your library with Work library. Work library is a working library. This means that in a design all VHDL Codes are implemented in a default library called work .  As for your Library , it only includes your package created previous section.

16. 


In Add items to the project  dialog box  select add existing file and the opened window select the files which you want to simulate. Click Open and then Close.

Not: For multiple choice , use CTRL key

17. پروژه را با کلیک چپ کردن در پنجره workspace هایلایت کنید و  سپس کلیک راست می کنیم و طبق شکل زیر  Compile>compile Selected را انتخاب می کنیم. به این ترتیب شما خواهید توانست پروژه را کامپایل کنید.

18. شما می توانید به آسانی با توجه به علامت  زیر ستون status بفهمید که پروژه تان به صورت موفقیت آمیز کامپایل شده است.

19. گزینه Simulate>Start Simulation را از منو بار انتخاب کنید.

20. در پنجره Start Simulation علامت  '+' کنار برنامه را کلیک کنید تا زیر گروه هایش گسترش داده شود سپس برنامه  test را با کلیک چپ انتخاب کنید و دکمه OK را کلیک کنید.

21. 


If you don't see work library in Start Simulation dialog box, select   File>new library and create a new library named work.

Select the the Sim Part from bottom of the workspace window. And then highlight the project and left click. from pop-up menu select Add/Add to Wave. So that you added all inputs and outputs of test program to the wave window.

22. 


Note: To open any windows select File>View options

In order to simulate the design to verify you should give values the inputs. So that you can observe the output response of the design. 
To do so, In the wave window select the "in1" and right click. Then select the force from pop-up menu.

23. 


And Source Selected Signal dialog box enter a value for in1 as shown below and press OK.

24. 


Make the same processes to the In2 and give a value. Anadjust the simulation time step as shown below.

25. 


Select Simulate >Run>Run from menu bar.

26. بعد از شبیه سازی شما نتیجه را به صورت زیر خواهید داشت.

به شما تبریک می گوییم، حال شما یک کتابخانه عملی ( working library) دارید که می توانید از آن در هر طراحی که بخواهید استفاده کنید.


 

برچسب ها: 

دیدگاه جدیدی بگذارید

CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.
3 + 1 =
Solve this simple math problem and enter the result. E.g. for 1+3, enter 4.