VHDL, scitacka a CarryOut
Marek Pavlu
pavlu@HWserver.cz
Čtvrtek Duben 20 14:17:58 CEST 2006
Zdravim,
Otazecka:). Nedalo by se vyuzit interni promennou v procesu?
Ale asi by to vygenerovalo sadu registru, ze? Safra ale ony tam stejne
budou, jen to nebude signal, ale varible, nebo jsem uplne mimo misu? :)
Teda kdyz uvazuji toto:
CntAdd <= '0'&Cnt + AddReg;
process (Fin) begin
if (Fin='1' and Fin'event) then
Cnt <= CntAdd(7 downto 0);
end if;
end process;
S pozdravem,
Marek Pavlu
// -----Original Message-----
// From: hw-list-bounces@list.hw.cz [mailto:hw-list-bounces@list.hw.cz] On
// Behalf Of Milan
// Sent: Thursday, April 20, 2006 9:52 AM
// To: HW-news
// Subject: Re: VHDL, scitacka a CarryOut
//
// Ja to skonkretizujem, napr.
//
// signal AddReg: std_logic_vector (7 downto 0);
// signal CntAdd: std_logic_vector (8 downto 0);
//
// CntAdd <= AddReg & '0';
// alebo podla potreby napr:
// CntAdd <= AddReg(7 downto3) & '1' & AddReg(2 downto0);
//
// Milan
// ----- Original Message -----
// From: "Daniel Valuch" <daniel.valuch@wanadoo.fr>
// To: "HW-news" <hw-list@list.hw.cz>
// Sent: Thursday, April 20, 2006 9:31 AM
// Subject: Re: VHDL, scitacka a CarryOut
//
//
// naformatujte si ten 8 bitovy vektor do 9 bitoveho tak ze MSB bude nula
// (spojite 8 bitovy vektor a konstantu '0'). Potom scitate, viete ze k
// preteceniu nemoze dojst a viete ze MSB bude carry out. Nemam tu moje
// poznamky (som v Bratislave), takze konkretne vam neporadim.
// Jedna zo zakladnych vlastnosti VHDL je jednoznacnost. Pri vsetkych
// operaciach mozete pouzivat len rovnake (alebo definovane) operandy.
// Zamedzi sa tym veciam typu sucet signed a unsigned vektora a podobne.
// b.
//
// p.s. nemali by byt vsetky operacie vo vnutri procesu?
//
//
// Hynek Sladky wrote:
//
// >Uz zas nevim, jak dal. Potrebuju dostat signal CarryOut ze scitacky,
// ale
// >nejak se nedari...
// >
// >mam registr
// > signal AddReg: std_logic_vector (7 downto 0) := "10000000";
// >dale vysledek
// > signal CntAdd: std_logic_vector (8 downto 0);
// >a operace
// > CntAdd <= Cnt + AddReg;
// > process (Fin) begin
// > if (Fin='1' and Fin'event) then
// > Cnt <= CntAdd(7 downto 0);
// > end if;
// > end process;
// >
// >Myslel jsem, ze CntAdd(8) bude obsahovat CarryOut, ale zda se, ze ne.
// >Preklad vyhodi Warning:
// >Width mismatch. <CntAdd> has a width of 9 bits but assigned expression
// >is 8-bit wide.
// >
// >Jak by se to dalo vyresit?
// >
// >Diky,
// >Hynek Sladky
// >
// >
//
//
// _______________________________________________
// HW-list mailing list - sponsored by www.HW.cz
// Hw-list@list.hw.cz
// http://list.hw.cz/mailman/listinfo/hw-list
//
//
//
//
//
//
//
//
//
// __________ Informacia od NOD32 1.1497 (20060419) __________
//
// Tato sprava bola preverena antivirusovym systemom NOD32.
// http://www.eset.sk
//
//
// _______________________________________________
// HW-list mailing list - sponsored by www.HW.cz
// Hw-list@list.hw.cz
// http://list.hw.cz/mailman/listinfo/hw-list
_____
avast! Antivirus <http://www.avast.com> : Odchozi zprava cista.
Virova databaze (VPS): 0616-2, 18.04.2006
Testovano: 20.4.2006 14:17:57
avast! - copyright (c) 2000-2003 ALWIL Software.
Další informace o konferenci Hw-list