E-learn.ro
Panou utilizatori
Utilizator Parola
Creeaza cont nou    Recupereaza parola
Login
Newsletter
Introdu adresa ta de email
Inscrie-te
Inchide panoul de utilizatori
Add to Google

Tutoriale Verilog

Descarca toolbar

Toolbar E-learn.ro Facebook Twitter

DEVELOPMENT  /  Verilog  /  Notiuni introductive (1)

Proiectarea unui sumator pe un bit in mediul integrat XILINX ISE

11.01.2010
Proiectarea unui sumator pe un bit in mediul integrat XILINX ISE

Softwarele CAD (Computer Aided Design) de proiectare cu circuite logice programabile (FPGA) permit in prima etapa alegerea unei metode de descriere a proiectului: captura schematica, descriere VHDL sau diagrame de stare, in urmatoarea etapa se poate face o simulare functionala in urma operatiei de sinteza si de timp in urma operatiei de translatare.

Total vizualizari: 8117 8117 afisari   |   Comentarii  0   |   Rating   |   (4 voturi)   |   Timp necesar: 30 min 30 min   |   Nivel de cunostiinte necesar: Mediu  Mediu

Autor: moroyanu Incepator
Adauga la tutoriale favorit Adauga la tutoriale favorite
Pagina:
« 1 2 3 »
comenteaza printeaza

Modulul in jurul caruia este construita placa de dezvoltare D2SB apartine familiei Spartan2, are codul XC2S200E (200 insemna ca modulul contine echivalentul a 200000 de porti logice) si impachetarea este de tip PQ208.

Ca si in cazul proiectelor software, un proiect este compus din mai multe fisiere. Functionalitatea proiectelor hardware se poate specifica fie prin intermediul schemelor logice fie prin intermediul unui limbaj de descriere hardware, cum ar fi VHDL sau Verilog. Asa cum in cazul unui proiect scris in C exista o functie care se executa prima, si anume main, in cazul proiectelor hardware rolul lui "main" este jucat de modulul din varful ierarhiei, si anume Top Level Module. Descrierea modulul din varful ierarhiei poate fi de tip schematic sau HDL (HDL=Hardware Description Language = Limbaj de descriere hardware). Pe parcursul acestui tutorial se va folosi numai descrierea de tip HDL.

In cazul sumatorului de un bit, descrierea functionalitatii se face prin intermediul unui singur fisier HDL si automat aceasta va fi in varful ierarhiei. Din acest motiv alegem Top Level Module Type de tip HDL.

Celelalte doua campuri se seteaza la valorile din figura 4 (vor fi detaliate in urmatoarele tutoriale), iar apoi se apasa butonul Next.

Actiunile aferente urmatoarelor doua ferestre, Create a New Source si Add Existing Sources, sunt optionale, si din acest motiv se apasa Next pentru fiecare in parte, fara sa se completeze nimic. In final, apare o fereastra de informare, pentru care se apas! Finish. Dupa executarea tuturor actiunilor descrise mai sus trebuie sa se obtina urmatorul ecran:

Figura 5

Figura 5


Pasul 2:

Crearea fisierului VHDL care va contine descrierea sumatorului de un bit.

Se face clic dreapta pe numele circuitului (xc2s200e), si din meniul contextual aparut se selecteaza New Source. In fereastra New Source, se selecteaza tipul VHDL Module iar apoi se completeaza numele fisierului (figura 6). In continuare se apasa Next, apare o fereastra care permite definirea semnalelor prin care modulul descris se conecteaza cu exteriorul (figura 7).

Figura 6

Figura 6


Figura 7

Figura 7

Intrarile sumatorului sunt semnalele A, B, si Cin iar iesirile S si Cout. Se completeaza fereastra din figura 7 cu aceste informatii, apoi se apasa Next. Ca urmarea, apare o fereastra de informare care sumarizeaza informatiile introduse si permite revenirea in caz ca exista o greseala. Daca totul este corect, se apasa butonul Finish.

Ca efect al apasarii lui Finish, sum.vhd este construit si adaugat la proiect. Dupa cum se remarca ISE a creat automat entitatea din descrierea furnizata prin intermediul figurii 7.

library IEEE;

use IEEE.STD_LOGIC_1164.ALL;

use IEEE.STD_LOGIC_ARITH.ALL;

use IEEE.STD_LOGIC_UNSIGNED.ALL;

-- Uncomment the following lines to use the declarations that are

-- provided for instantiating Xilinx primitive components.

-- library UNISIM;

-- use UNISIM.VComponents.all;

entity Sum_s4 is

Port ( Cin : in std_logic;

A : in std_logic;

B : in std_logic;

S : out std_logic;

Cout : out std_logic);

end Sum_s4;

......

In corpul arhitecturii intre begin si end Behavioral scrieti expresiile logice S si Cout.

S <= A xor B xor Cin;

Cout <= (A and B) or (B and Cin) or (A and Cin);

Pagina:
« 1 2 3 »
comenteaza printeaza

Cuvinte cheie:   XILINX ISE,   circuite logice programabile,   blocuri logice,   verilog

Noteaza acest tutorial
Rating tutorial
 
(4 voturi)
Pentru a nota acest tutorial, trebuie sa fii logat!
Posteaza un comentariu
Pentru a posta un comentariu, trebuie sa fii logat!
0 TOP UTILIZATORI* 0 0
Tutoriale scrise de claibornelara
claibornelara Rang utilizator claibornelara - Incepator
4335
Tutoriale scrise de mcuemica
mcuemica Rang utilizator mcuemica - Incepator
4200
Tutoriale scrise de ellarichards
ellarichards Rang utilizator ellarichards - Incepator
4185
Tutoriale scrise de kheops
kheops Rang utilizator kheops - Mediu
4084
Tutoriale scrise de emonclercheap
emonclercheap Rang utilizator emonclercheap - Incepator
4025
* Acest top reprezinta punctajele acumulate in ultimele 30 de zile.
Verilog Java StyleSheet COREL DRAW Flash Dreamweaver Excel Python RoR XHTML Swift 3D CSS XML Photoshop Vista Gimp MySQL JSON Powerpoint SEO Lightroom SWF Action Script HTML Outlook Ruby on Rails Sony Vegas Illustrator PSD PHP Word Javascript Fireworks Bridge Fotografie AJAX
Promovare:
Daca faci parte din comunitatea E-learn.ro si doresti promovarea acesteia, poti accesa pagina de promovare.
Arhiva newsletter:
Daca ai ratat un numar mai vechi, sau vrei sa revezi care au fost noutatile E-learn.ro la un moment dat, poti accesa arhiva de newslettere.
  Copyright © 2008-2013 E-LEARN.ro. Toate drepturile rezervate. Termeni si conditii.
Conceput si realizat de Neokinetics Software