Re: Date: Wed, 7 Apr 2004 12:35:29 +0200
Da li neko zna koji su tacni zahtevi po pitanju mnozenika i mnozioca? Da li je potrebno raditi i sa negativnim brojevima? Da li su oni u 2. komplementu?
Ukoliko je mnozilac 8 bita (4 koraka u modifikovanom bulovom algoritmu) a mnozenik 12 bita koji su opsezi za njih tj. min i max vrednosti za koje treba MUL jedinica da ispravno radi?
Pozdrav,
Jovan
----- Original Message -----
From: Predrag Gojic
To: vlsi-nastava@titan.etf.bg.ac.yu
Sent: Thursday, April 08, 2004 00:51
Subject: Re: [vlsi-nastava] Date: Wed, 7 Apr 2004 12:35:29 +0200
Napravio sam lapsus, kritican slucaj je -2*M (a ne 2*M) gde je M minimalna negativna vrednost. Tada -2*M daje maksimalni moguci pozitini broj koji treba predstaviti odgovarajucim brojem bita.
Pozdrav,
Pedja
----- Original Message -----
From: Predrag Gojic
To: vlsi-nastava@titan.etf.bg.ac.yu
Sent: Wednesday, April 07, 2004 3:51 PM
Subject: Re: [vlsi-nastava] Date: Wed, 7 Apr 2004 12:35:29 +0200
Fora je (ne vidi se bag tako lako) u tome sto modifikovani booth-ov algoritam koristi mnozenje 2*multiplikant i tu moze da nastane prekoracenje, kod tog izracunavanja kao i kod dodavanja na medju rezultat. Razlog je sto je mnozenje 2*broj u stvari siftovanje ulevo, pa se 2*broj ne moze predstaviti sa istim brojem bita kao i sam broj.
Treba obratiti paznju i na to da je apsolutna vrednost minimalne (negativne) vrednosti multiplikant-a za jedna veca od njegove maksimalne (pozitivne) vrednosti pa je kritican slucaj izracunavanje 2*multiplikant, gde je multiplikant minimalna negativna vrednost.
Znaci treba predvideti dodatne bite za 2*multiplikant i medjurezultat.
Pored svega za finalni rezultat 20 bita je dovoljno, matematika ne laze:)
Obican Booth-ov algoritam nema potrebe za dodatnim bitima jer ne koristi mnozenje 2*multiplikant.
Da ne bude da sam sve rekao, sam izracunaj koliko dodatnih bitova za medjurezultat treba.
Pozdrav,
Pedja
----- Original Message -----
From: Dragan Krtalic
To: Vlsi
Sent: Wednesday, April 07, 2004 12:33 PM
Subject: [vlsi-nastava] Date: Wed, 7 Apr 2004 12:35:29 +0200
Ako neko moze da mi pomogne.
Pogledao sam primer sa "zvanicnog" sajta, booth-ov algoritam u realizaciji Gvozdena Marinkovica iz januara 2002.
Pokretanjem simulatora sa nekim vrednostima koje su male mnozac radi ispravno,
ali za neke vredmosti neradi uopste ispravno vec mi daje bezveze rasenja, da li neko zna sta je fora.
Evo nekih primera koji nedaju ispravan rezultat
X=011111 Y=011111 res= 111111000001 a treba res= 001111000001
X=011111 Y=011011 res= 000001000101 a treba res= 001101000101
X=011111 Y=011001 res= 000000000111 a treba res= 001100000111
da li su ovo ispravne vrednosti promenljivih X i Y, a da ne govorim o negativnim vrednostima promenljivih X i Y.
Unapred hvala.
Dragan Krtalic
Ukoliko je mnozilac 8 bita (4 koraka u modifikovanom bulovom algoritmu) a mnozenik 12 bita koji su opsezi za njih tj. min i max vrednosti za koje treba MUL jedinica da ispravno radi?
Pozdrav,
Jovan
----- Original Message -----
From: Predrag Gojic
To: vlsi-nastava@titan.etf.bg.ac.yu
Sent: Thursday, April 08, 2004 00:51
Subject: Re: [vlsi-nastava] Date: Wed, 7 Apr 2004 12:35:29 +0200
Napravio sam lapsus, kritican slucaj je -2*M (a ne 2*M) gde je M minimalna negativna vrednost. Tada -2*M daje maksimalni moguci pozitini broj koji treba predstaviti odgovarajucim brojem bita.
Pozdrav,
Pedja
----- Original Message -----
From: Predrag Gojic
To: vlsi-nastava@titan.etf.bg.ac.yu
Sent: Wednesday, April 07, 2004 3:51 PM
Subject: Re: [vlsi-nastava] Date: Wed, 7 Apr 2004 12:35:29 +0200
Fora je (ne vidi se bag tako lako) u tome sto modifikovani booth-ov algoritam koristi mnozenje 2*multiplikant i tu moze da nastane prekoracenje, kod tog izracunavanja kao i kod dodavanja na medju rezultat. Razlog je sto je mnozenje 2*broj u stvari siftovanje ulevo, pa se 2*broj ne moze predstaviti sa istim brojem bita kao i sam broj.
Treba obratiti paznju i na to da je apsolutna vrednost minimalne (negativne) vrednosti multiplikant-a za jedna veca od njegove maksimalne (pozitivne) vrednosti pa je kritican slucaj izracunavanje 2*multiplikant, gde je multiplikant minimalna negativna vrednost.
Znaci treba predvideti dodatne bite za 2*multiplikant i medjurezultat.
Pored svega za finalni rezultat 20 bita je dovoljno, matematika ne laze:)
Obican Booth-ov algoritam nema potrebe za dodatnim bitima jer ne koristi mnozenje 2*multiplikant.
Da ne bude da sam sve rekao, sam izracunaj koliko dodatnih bitova za medjurezultat treba.
Pozdrav,
Pedja
----- Original Message -----
From: Dragan Krtalic
To: Vlsi
Sent: Wednesday, April 07, 2004 12:33 PM
Subject: [vlsi-nastava] Date: Wed, 7 Apr 2004 12:35:29 +0200
Ako neko moze da mi pomogne.
Pogledao sam primer sa "zvanicnog" sajta, booth-ov algoritam u realizaciji Gvozdena Marinkovica iz januara 2002.
Pokretanjem simulatora sa nekim vrednostima koje su male mnozac radi ispravno,
ali za neke vredmosti neradi uopste ispravno vec mi daje bezveze rasenja, da li neko zna sta je fora.
Evo nekih primera koji nedaju ispravan rezultat
X=011111 Y=011111 res= 111111000001 a treba res= 001111000001
X=011111 Y=011011 res= 000001000101 a treba res= 001101000101
X=011111 Y=011001 res= 000000000111 a treba res= 001100000111
da li su ovo ispravne vrednosti promenljivih X i Y, a da ne govorim o negativnim vrednostima promenljivih X i Y.
Unapred hvala.
Dragan Krtalic
- Follow-Ups:
- Re: Date: Wed, 7 Apr 2004 12:35:29 +0200
- From: "Maja Stikic" <majche@mail.ru>
- Re: Date: Wed, 7 Apr 2004 12:35:29 +0200
- References:
- [no subject]
- From: "Dragan Krtalic" <krtalic@InfoSky.Net>
- Re: Date: Wed, 7 Apr 2004 12:35:29 +0200
- From: "Predrag Gojic" <pgojic@eunet.yu>
- Re: Date: Wed, 7 Apr 2004 12:35:29 +0200
- From: "Predrag Gojic" <pgojic@eunet.yu>
- [no subject]
Previous by date: RE: Mul finished i overflow
Next by date: Re: Date: Wed, 7 Apr 2004 12:35:29 +0200
Previous by thread: Re: Date: Wed, 7 Apr 2004 12:35:29 +0200 Next by thread: Re: Date: Wed, 7 Apr 2004 12:35:29 +0200
Previous by thread: Re: Date: Wed, 7 Apr 2004 12:35:29 +0200 Next by thread: Re: Date: Wed, 7 Apr 2004 12:35:29 +0200