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

Subversion Repositories huffmandecoder

[/] [huffmandecoder/] [trunk/] [jpeg_tb.vhd] - Blame information for rev 3

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 3 dose
 
2
--------------------------------------------------------------------------------
3
LIBRARY ieee;
4
USE ieee.std_logic_1164.ALL;
5
--USE ieee.std_logic_unsigned.all;
6
USE ieee.numeric_std.ALL;
7
 use work.jpeg_pack.all;
8
 
9
ENTITY jpeg_tb IS
10
END jpeg_tb;
11
 
12
ARCHITECTURE behavior OF jpeg_tb IS
13
 
14
    -- Component Declaration for the Unit Under Test (UUT)
15
 
16
signal  output_valid    :  std_logic:='0';
17
signal data_out :  signed (15 downto 0);
18
signal sop,eop: std_logic;
19
signal next_eob: std_logic;
20
   --Inputs
21
   signal clk : std_logic := '0';
22
  signal zrl: unsigned (3 downto 0);
23
   signal data_in : unsigned (7 downto 0);
24
   signal wr : std_logic := '0';
25
        --Outputs
26
   --signal data_out : matrix_word;
27
   signal wr_en : std_logic;
28
 
29
   -- Clock period definitions
30
   constant clk_period : time := 10 ns;
31
 
32
subtype by_te is character;
33
 
34
type f_byte is file of by_te;
35
BEGIN
36
 
37
process (wr_en,clk)
38
--constant file_name: string:="test3.jpg";
39
constant file_name: string:="test.jpg";
40
file in_file: f_byte open read_mode is file_name;
41
 
42
--variable in_line,out_line: line;
43
variable good:boolean;
44
variable a:character;
45
 
46
begin
47
--read(in_file,a);
48
--data_in<=a;
49
--wait until wr_en='1';
50
--wait for 6 ns;
51
--wr<='1';
52
 
53
--when not endfile(in_file) loop
54
if  wr_en='0' then
55
        --wr<='0';
56
        elsif clk'event and clk='1' then
57
                if not endfile (in_file) then
58
                        read(in_file,a);
59
                end if;
60
                data_in<=to_unsigned(character'pos(a),8);--very tricky the conversation
61
        --      wr<='1';
62
 
63
end if;
64
end process;
65
wr<='1' when wr_en='1' else'0';
66
 
67
  clk_process :process
68
   begin
69
                clk <= '0';
70
                wait for clk_period/2;
71
                clk <= '1';
72
                wait for clk_period/2;
73
   end process;
74
 
75
 
76
        -- Instantiate the Unit Under Test (UUT)
77
   uut: entity work.huffman_decoder PORT MAP (
78
 
79
        clk => clk,
80
        next_eob=> next_eob,
81
        zrl => zrl,
82
        sop =>sop,
83
        eop => eop,
84
        output_valid=>output_valid,
85
        data_out=>data_out,
86
        wr => wr,
87
        decoder_enable =>'1',
88
          data_in => data_in,
89
        wr_en=>wr_en
90
        );
91
 
92
 
93
 
94
END;

powered by: WebSVN 2.1.0

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