www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

vhdl - množenje, deljenje

 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> FPGA in CPLD programabilna vezja
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
trot
Član
Član



Pridružen-a: Čet 18 Jan 2007 20:25
Prispevkov: 1282
Aktiv.: 5.72
Kraj: glej fogl

PrispevekObjavljeno: Čet Mar 06, 2008 9:01 pm    Naslov sporočila:  vhdl - množenje, deljenje Odgovori s citatom

Kako se v vhdl-ju uporablja množenje in deljenje (ima kdo kak primerček)? Tole mi javi napako "/ can not have such operands in this context". Kaj je narobe. Moram vključit še kakšno knjižnico?

ibrary IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;

signal counts : std_logic_vector (7 downto 0);
counts <= counts/10;
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
PeterC
Član
Član



Pridružen-a: Tor 14 Dec 2004 20:22
Prispevkov: 204
Aktiv.: 0.86

PrispevekObjavljeno: Čet Mar 06, 2008 9:09 pm    Naslov sporočila:   Odgovori s citatom

Pri VHDL-u moraš razmišljati binarno.

Deljenje je premik registra v desno.

_________________
Time is like a fuse, short and burning fast
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
dragoon
Član
Član



Pridružen-a: Čet 03 Maj 2007 21:51
Prispevkov: 452
Aktiv.: 2.05
Kraj: Trojane

PrispevekObjavljeno: Čet Mar 06, 2008 9:09 pm    Naslov sporočila:   Odgovori s citatom

Kolikor vem delit ne zna. Moraš sam narest. Zna pa množit in seštevat odštevat.
_________________
LP, Mitja
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo MSN Messenger - naslov
chaos
Član
Član



Pridružen-a: Sob 16 Sep 2006 22:12
Prispevkov: 1063
Aktiv.: 4.66
Kraj: Zagorje ob Savi

PrispevekObjavljeno: Čet Mar 06, 2008 9:27 pm    Naslov sporočila:   Odgovori s citatom

Odvisno kater čip uporabljaš. Nekateri imajo že vgrajene multiplier-je, vsaj nekaj enot. Pri drugih ga moraš napisat. V CPLD množilnika ne boš spravil, vsaj 32-bitnega ne. Delilnike mislim da nima nobeden ... za 'soft' implemenatcijo išči npr. radix-2.

LP!
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
trot
Član
Član



Pridružen-a: Čet 18 Jan 2007 20:25
Prispevkov: 1282
Aktiv.: 5.72
Kraj: glej fogl

PrispevekObjavljeno: Tor Mar 11, 2008 11:16 pm    Naslov sporočila:   Odgovori s citatom

Zakaj pa v ise v #language Templates" (rumena lučka) piše:
Koda:

 
--The following are the arithmetic operators as defined by the VHDL language.
 
   +   ---- Addition
   -   ---- Subtraction
   *   ---- Multiplication
   /   ---- Divide
   mod ---- Modulus
   **  ---- Power Operator (i.e. 2**8 returns 256)

Izgleda, da vhdl nekaj že ima?
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
aly
Član
Član



Pridružen-a: Tor 28 Sep 2004 14:51
Prispevkov: 9407
Aktiv.: 39.71
Kraj: Kranj - struževo

PrispevekObjavljeno: Sre Mar 12, 2008 8:18 am    Naslov sporočila:   Odgovori s citatom

Sintaksa te yebe Exclamation Wink

counts <= counts/10;

>10< ni std_logic_vector. vrednost 10 moraš zapisat z "00001010", pa bo šlo.

_________________
I'm going to stand outside, so if anyone asks, I'm outstanding Smile
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran MSN Messenger - naslov
jur
Član
Član



Pridružen-a: Pet 02 Dec 2005 14:45
Prispevkov: 5142
Aktiv.: 21.71
Kraj: [color=zelena]Ljubljana[/color]

PrispevekObjavljeno: Sre Mar 12, 2008 9:50 am    Naslov sporočila:   Odgovori s citatom

trot je napisal/a:
Zakaj pa v ise v #language Templates" (rumena lučka) piše:
Koda:
 
--The following are the arithmetic operators as defined by the VHDL language.
    +   ---- Addition
...
   **  ---- Power Operator (i.e. 2**8 returns 256)
Izgleda, da vhdl nekaj že ima?

Preberi si raje dokumentacijo (pdf). Precej bolje razloži aritmetiko, kot pa language templates. Če bi prebral, ti ne bi bilo potrebno spraševati in čakati na odgovor.

Jur
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
Glitch
Član
Član



Pridružen-a: Pet 07 Apr 2006 11:40
Prispevkov: 1477
Aktiv.: 6.32

PrispevekObjavljeno: Sre Mar 12, 2008 12:26 pm    Naslov sporočila:   Odgovori s citatom

Najprej se mora človek vprašati ali bo taka operacija sploh izvedljiva v končnem vezju. V CPLD tlačit deljenje in množenje (vsaj na tak, višje abstrakten način) nekako ne "potegne".
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
trot
Član
Član



Pridružen-a: Čet 18 Jan 2007 20:25
Prispevkov: 1282
Aktiv.: 5.72
Kraj: glej fogl

PrispevekObjavljeno: Sre Mar 12, 2008 1:34 pm    Naslov sporočila:   Odgovori s citatom

jur je napisal/a:
Preberi si raje dokumentacijo (pdf). Precej bolje razloži aritmetiko, kot pa language templates.

Katero dokumentacijo to misliš?

Glitch je napisal/a:
Najprej se mora človek vprašati ali bo taka operacija sploh izvedljiva v končnem vezju. V CPLD tlačit deljenje in množenje (vsaj na tak, višje abstrakten način) nekako ne "potegne".

Zakaj pa ne bi bila izvedljiva, misliš, če nima že vgrajene neke aritmetične enote? Kam pa lahko potem tlačim deljenje in množenje, v FPGA? Saj bi uporabil za začetek aritmetiko s fiksno vejico.
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
jur
Član
Član



Pridružen-a: Pet 02 Dec 2005 14:45
Prispevkov: 5142
Aktiv.: 21.71
Kraj: [color=zelena]Ljubljana[/color]

PrispevekObjavljeno: Sre Mar 12, 2008 1:42 pm    Naslov sporočila:   Odgovori s citatom

Priročnike (navodila za uporabo), za VHDL. Omenjena je aritmetika in kako deluje.

Jur
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
Glitch
Član
Član



Pridružen-a: Pet 07 Apr 2006 11:40
Prispevkov: 1477
Aktiv.: 6.32

PrispevekObjavljeno: Sre Mar 12, 2008 2:22 pm    Naslov sporočila:   Odgovori s citatom

Zato, ker je potrebno množilnik ali delilnik najprej narediti. HW množilnik imajo samo FPGAji in še to ne vsi. Obstaja n različnih izvedb za množilnik, vsaka izveba zahteva n seštevalnikov in (ni nujno) m flip-flopov. Za delilnik je pa še huje. Lahko se zgodi, da ti bo "synthesizer" sprejel deljenje ali množenje, na koncu ti bo pa pojedel 90% CLBjev.

Mogoče sem preveč posplošil zadevo, ker ne vem točno kaj bi rad delil in množil ampak vsaj ti dve operaciji ne smeš vzeti za nekaj samoumevnega.

Aja, behavioral simulacija požre praktično vse! Post-synthesis simulacija je prvi pravi pokazatelj kaj lahko in kaj ne, ker se na lahko na nivoju generičnih elementov pokaže tudi izvedba.
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> FPGA in CPLD programabilna vezja Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Stran 1 od 1

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 493 dni


Powered by phpBB © 2001, 2005 phpBB Group