URL
https://opencores.org/ocsvn/nanoblaze/nanoblaze/trunk
[/] [nanoblaze/] [trunk/] [Circuit/] [alu.vhd] - Diff between revs 10 and 11
Show entire file |
Details |
Blame |
View Log
Rev 10 |
Rev 11 |
Line 70... |
Line 70... |
|
|
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
-- values for arithmetic operations
|
-- values for arithmetic operations
|
aArith <= signed(resize(unsigned(opA), aArith'length));
|
aArith <= signed(resize(unsigned(opA), aArith'length));
|
bArith <= signed(resize(unsigned(opB), bArith'length));
|
bArith <= signed(resize(unsigned(opB), bArith'length));
|
cInArith(cInArith'high downto 1) <= (others => '0');
|
cInArith <= (0 => cIn, others => '0');
|
cInArith <= '0' & cIn;
|
|
|
|
process(aluCode, cIn, opA)
|
process(aluCode, cIn, opA)
|
begin
|
begin
|
case aluCode(2 downto 1) is
|
case aluCode(2 downto 1) is
|
when "00" => cInShift <= cIn;
|
when "00" => cInShift <= cIn;
|
Line 91... |
Line 90... |
aluOperation: process(
|
aluOperation: process(
|
aluCodeInt,
|
aluCodeInt,
|
opA, opB,
|
opA, opB,
|
aArith, bArith, cInArith,
|
aArith, bArith, cInArith,
|
cInShift,
|
cInShift,
|
yArith
|
yArith, aluOutInt
|
)
|
)
|
variable xorAcc: std_ulogic;
|
variable xorAcc: std_ulogic;
|
begin
|
begin
|
yArith <= (others => '-');
|
yArith <= (others => '-');
|
cOut <= '-';
|
cOut <= '-';
|
© copyright 1999-2025
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.