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

Subversion Repositories mkjpeg

[/] [mkjpeg/] [trunk/] [tb/] [vhdl/] [HostBFM.vhd] - Diff between revs 28 and 32

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 28 Rev 32
Line 277... Line 277...
 
 
    ------------------
    ------------------
    type ROMQ_TYPE is array (0 to 64-1)
    type ROMQ_TYPE is array (0 to 64-1)
            of unsigned(7 downto 0);
            of unsigned(7 downto 0);
 
 
  constant qrom : ROMQ_TYPE :=
  constant qrom_lum : ROMQ_TYPE :=
  (
  (
  -- 100%
  -- 100%
  --others => X"01"
  --others => X"01"
 
 
  -- 85%
  -- 85%
Line 301... Line 301...
  --X"1F", X"13", X"17", X"22", 
  --X"1F", X"13", X"17", X"22", 
  --X"24", X"22", X"1E", X"24", 
  --X"24", X"22", X"1E", X"24", 
  --X"1C", X"1E", X"1F", X"1E"
  --X"1C", X"1E", X"1F", X"1E"
 
 
  -- 75%
  -- 75%
   --X"08", X"06", X"06", X"07", X"06", X"05", X"08", X"07", X"07", X"07", X"09", X"09", X"08", X"0A", X"0C", X"14",
   X"08", X"06", X"06", X"07", X"06", X"05", X"08", X"07", X"07", X"07", X"09", X"09", X"08", X"0A", X"0C", X"14",
   --X"0D", X"0C", X"0B", X"0B", X"0C", X"19", X"12", X"13", X"0F", X"14", X"1D", X"1A", X"1F", X"1E", X"1D", X"1A",
   X"0D", X"0C", X"0B", X"0B", X"0C", X"19", X"12", X"13", X"0F", X"14", X"1D", X"1A", X"1F", X"1E", X"1D", X"1A",
   --X"1C", X"1C", X"20", X"24", X"2E", X"27", X"20", X"22", X"2C", X"23", X"1C", X"1C", X"28", X"37", X"29", X"2C",
   X"1C", X"1C", X"20", X"24", X"2E", X"27", X"20", X"22", X"2C", X"23", X"1C", X"1C", X"28", X"37", X"29", X"2C",
   --X"30", X"31", X"34", X"34", X"34", X"1F", X"27", X"39", X"3D", X"38", X"32", X"3C", X"2E", X"33", X"34", X"32"
   X"30", X"31", X"34", X"34", X"34", X"1F", X"27", X"39", X"3D", X"38", X"32", X"3C", X"2E", X"33", X"34", X"32"
 
 
   -- 15 %
   -- 15 %
   --X"35", X"25", X"28", X"2F", 
   --X"35", X"25", X"28", X"2F", 
   --X"28", X"21", X"35", X"2F", 
   --X"28", X"21", X"35", X"2F", 
   --X"2B", X"2F", X"3C", X"39", 
   --X"2B", X"2F", X"3C", X"39", 
Line 325... Line 325...
   --X"FF", X"CE", X"FF", X"FF", 
   --X"FF", X"CE", X"FF", X"FF", 
   --X"FF", X"FF", X"FF", X"FF", 
   --X"FF", X"FF", X"FF", X"FF", 
   --X"FF", X"FF", X"FF", X"FF"                                              
   --X"FF", X"FF", X"FF", X"FF"                                              
 
 
   -- 50%
   -- 50%
 
   --X"10", X"0B", X"0C", X"0E", X"0C", X"0A", X"10", X"0E", 
 
   --X"0D", X"0E", X"12", X"11", X"10", X"13", X"18", X"28",
 
   --X"1A", X"18", X"16", X"16", X"18", X"31", X"23", X"25", 
 
   --X"1D", X"28", X"3A", X"33", X"3D", X"3C", X"39", X"33",
 
   --X"38", X"37", X"40", X"48", X"5C", X"4E", X"40", X"44", 
 
   --X"57", X"45", X"37", X"38", X"50", X"6D", X"51", X"57",
 
   --X"5F", X"62", X"67", X"68", X"67", X"3E", X"4D", X"71", 
 
   --X"79", X"70", X"64", X"78", X"5C", X"65", X"67", X"63"
 
  );
 
 
 
  constant qrom_chr : ROMQ_TYPE :=
 
  (
 
   -- 50% for luminance! but used as chrominance, TODO!!
   X"10", X"0B", X"0C", X"0E", X"0C", X"0A", X"10", X"0E",
   X"10", X"0B", X"0C", X"0E", X"0C", X"0A", X"10", X"0E",
   X"0D", X"0E", X"12", X"11", X"10", X"13", X"18", X"28",
   X"0D", X"0E", X"12", X"11", X"10", X"13", X"18", X"28",
   X"1A", X"18", X"16", X"16", X"18", X"31", X"23", X"25",
   X"1A", X"18", X"16", X"16", X"18", X"31", X"23", X"25",
   X"1D", X"28", X"3A", X"33", X"3D", X"3C", X"39", X"33",
   X"1D", X"28", X"3A", X"33", X"3D", X"3C", X"39", X"33",
   X"38", X"37", X"40", X"48", X"5C", X"4E", X"40", X"44",
   X"38", X"37", X"40", X"48", X"5C", X"4E", X"40", X"44",
Line 364... Line 377...
 
 
 
 
    host_read(CLK, X"0000_0004", data_read,
    host_read(CLK, X"0000_0004", data_read,
               OPB_ABus, OPB_BE, OPB_DBus_out, OPB_RNW, OPB_select, OPB_XferAck);
               OPB_ABus, OPB_BE, OPB_DBus_out, OPB_RNW, OPB_select, OPB_XferAck);
 
 
    -- write quantization table
    -- write luminance quantization table 
    for i in 0 to 64-1 loop
    for i in 0 to 64-1 loop
      data_write := X"0000_00" & qrom(i);
      data_write := X"0000_00" & qrom_lum(i);
      addr := X"0000_0100" + to_unsigned(4*i,32);
      addr := X"0000_0100" + to_unsigned(4*i,32);
      -- SOF & num_comps
      host_write(CLK, addr, data_write,
 
               OPB_ABus, OPB_BE, OPB_DBus_in, OPB_RNW, OPB_select, OPB_XferAck);
 
 
 
    end loop;
 
 
 
    -- write chrominance quantization table 
 
    for i in 0 to 64-1 loop
 
      data_write := X"0000_00" & qrom_chr(i);
 
      addr := X"0000_0200" + to_unsigned(4*i,32);
      host_write(CLK, addr, data_write,
      host_write(CLK, addr, data_write,
               OPB_ABus, OPB_BE, OPB_DBus_in, OPB_RNW, OPB_select, OPB_XferAck);
               OPB_ABus, OPB_BE, OPB_DBus_in, OPB_RNW, OPB_select, OPB_XferAck);
 
 
    end loop;
    end loop;
 
 

powered by: WebSVN 2.1.0

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