OpenCores
URL https://opencores.org/ocsvn/galois_lfsr/galois_lfsr/trunk

Subversion Repositories galois_lfsr

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /galois_lfsr/trunk
    from Rev 6 to Rev 7
    Reverse comparison

Rev 6 → Rev 7

/rtl/user.vhdl
36,7 → 36,11
from http://www.opencores.org/lgpl.shtml.
*/
library ieee; use ieee.std_logic_1164.all, ieee.numeric_std.all; use ieee.math_real.all;
--use work.types.all;
/* Enable for synthesis; comment out for simulation.
For this design, we just need boolean_vector. This is already included in Questa/ModelSim,
but Quartus doesn't yet support this.
*/
use work.types.all;
 
entity user is
generic(
50,7 → 54,7
);
port(
/* Comment-out for simulation. */
--clk,reset:in std_ulogic;
clk,reset:in std_ulogic;
msg:in unsigned(tapVector'high downto 0):=9x"57";
crc32:out unsigned(31 downto 0):=(others=>'0')
);
/rtl/galois-lfsr.vhdl
40,7 → 40,11
from http://www.opencores.org/lgpl.shtml.
*/
library ieee; use ieee.std_logic_1164.all; use ieee.numeric_std.all;
--use work.types.all;
/* Enable for synthesis; comment out for simulation.
For this design, we just need boolean_vector. This is already included in Questa/ModelSim,
but Quartus doesn't yet support this.
*/
use work.types.all;
 
entity lfsr is generic(
/*
75,11 → 79,10
/* Receives a vector of taps; generates LFSR structure with correct XOR positionings. */
tapGenr: for i in 0 to taps'high-1 generate
i_d(i+1)<=x(i) when taps(i) else i_q(i);
x(i)<=i_q(i) xor i_q(taps'high); -- when nReset else '0';
x(i)<=i_q(i) xor i_q(taps'high);
end generate;
process(nReset,load,seed,clk) is begin
--if nReset='0' or load then i_q<=seed;
if nReset='0' then i_q<=(others=>'0');
elsif load then i_q<=seed;
elsif rising_edge(clk) then
/rtl/packages/pkg-types.vhdl
0,0 → 1,48
/*
Tauhop Solutions common types.
Author(s):
- Daniel C.K. Kho, daniel.kho@opencores.org | daniel.kho@tauhop.com
Copyright (C) 2012-2013 Authors and OPENCORES.ORG
This source file may be used and distributed without
restriction provided that this copyright statement is not
removed from the file and that any derivative work contains
the original copyright notice and the associated disclaimer.
This source file is free software; you can redistribute it
and/or modify it under the terms of the GNU Lesser General
Public License as published by the Free Software Foundation;
either version 2.1 of the License, or (at your option) any
later version.
This source is distributed in the hope that it will be
useful, but WITHOUT ANY WARRANTY; without even the implied
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the GNU Lesser General Public License for more
details.
You should have received a copy of the GNU Lesser General
Public License along with this source; if not, download it
from http://www.opencores.org/lgpl.shtml.
*/
library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;
use std.textio.all;
 
package types is
type byte is array(7 downto 0) of std_logic;
type byte_vector is array(natural range <>) of byte;
/* VHDL-2008 datatypes.
Comment out for simulation. Questa/ModelSim already supports this.
*/
type boolean_vector is array(natural range <>) of boolean;
type integer_vector is array(natural range <>) of integer;
/* [end]: VHDL-2008 datatypes. */
end package types;
 
package body types is
end package body types;

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.