亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? huffman_en_full.vhd

?? A Huffman implementation reference design in both VHDL and Verilog is provided by the Xilinx
?? VHD
?? 第 1 頁 / 共 5 頁
字號:


library IEEE; 
use IEEE.std_logic_1164.all;
use IEEE.std_logic_arith.all;
use IEEE.std_logic_unsigned.all;
use IEEE.numeric_std.all;

ENTITY huffman_en IS
   PORT (
      CLK                     : IN std_logic;   
      RST                     : IN std_logic;   
      rdy_in                  : IN std_logic;   
      rl_in                   : IN std_logic_vector(17 DOWNTO 0);    
      dc_in                   : IN std_logic_vector(11 DOWNTO 0);   
      scan_type               : IN std_logic;   
      luma                    : IN std_logic;   
      huffman_out             : OUT std_logic_vector(15 DOWNTO 0);   
      eob                     : IN std_logic;   
      rdy_out                 : OUT std_logic);   
END huffman_en;

ARCHITECTURE translated OF huffman_en IS


   -- signals 
   SIGNAL cntr64                   :  std_logic_vector(6 DOWNTO 0);   
   SIGNAL cl_sum_rdy               :  std_logic;   
   SIGNAL size                     :  std_logic_vector(3 DOWNTO 0);   
   SIGNAL cl_sum                   :  std_logic_vector(5 DOWNTO 0);   
   SIGNAL cl_sum_prev              :  std_logic_vector(5 DOWNTO 0);   
   SIGNAL codelength_dc            :  std_logic_vector(3 DOWNTO 0);   
   SIGNAL codelength_ac            :  std_logic_vector(4 DOWNTO 0);   
   SIGNAL codelength1              :  std_logic_vector(4 DOWNTO 0);   
   SIGNAL codelength2              :  std_logic_vector(4 DOWNTO 0);   
   SIGNAL codelength_ac1           :  std_logic_vector(4 DOWNTO 0);   
   SIGNAL vlcode_dc                :  std_logic_vector(9 DOWNTO 0);   
   SIGNAL vlcode1                  :  std_logic_vector(17 DOWNTO 0);   
   SIGNAL vlcode2                  :  std_logic_vector(17 DOWNTO 0);   
   SIGNAL vlcode3                  :  std_logic_vector(17 DOWNTO 0);   
   SIGNAL vlcode4                  :  std_logic_vector(17 DOWNTO 0);   
   SIGNAL vlcode_ac1               :  std_logic_vector(17 DOWNTO 0);   
   SIGNAL vlcode_ac                :  std_logic_vector(17 DOWNTO 0);   
   SIGNAL cl_sum_shift             :  std_logic_vector(38 DOWNTO 0);   
   SIGNAL full_flag1               :  std_logic;   
   SIGNAL half_flag1               :  std_logic;   
   SIGNAL half_flag2               :  std_logic;   
   SIGNAL full_flag2               :  std_logic;   
   SIGNAL half_flag3               :  std_logic;   
   SIGNAL full_flag3               :  std_logic;   
   SIGNAL full_flag4               :  std_logic;   
   SIGNAL half_flag4               :  std_logic;   
   SIGNAL full_flag5               :  std_logic;   
   SIGNAL full_flag6               :  std_logic;   
   SIGNAL half_flag5               :  std_logic;   
   SIGNAL mult_out                 :  std_logic_vector(38 DOWNTO 0);
   SIGNAL mult_out_int                 :  std_logic_vector(56 DOWNTO 0);
   SIGNAL upper_reg1               :  std_logic_vector(16 DOWNTO 1);   
   SIGNAL middle_reg1              :  std_logic_vector(16 DOWNTO 1);   
   SIGNAL lower_reg1               :  std_logic_vector(16 DOWNTO 1);   
   SIGNAL upper_reg2               :  std_logic_vector(16 DOWNTO 1);   
   SIGNAL middle_reg2              :  std_logic_vector(16 DOWNTO 1);   
   SIGNAL middle_reg3              :  std_logic_vector(16 DOWNTO 1);   

   SIGNAL temp4,temp5              :  std_logic_vector(11 DOWNTO 0);   
   SIGNAL temp6,temp7              :  std_logic_vector(11 DOWNTO 0);
   SIGNAL temp8,temp9              :  std_logic_vector(11 DOWNTO 0);
   SIGNAL temp10                   :  std_logic_vector(17 DOWNTO 0);
   SIGNAL temp11                   :  std_logic_vector(1 DOWNTO 0);

BEGIN

   --***************************************************************************
   -- Find the size for the "Differential_DC" value. The differential_dc_size gives the number of 
   --  Find the size for the "Differential_DC" value. The differential_dc_size gives the number of 
   -- bits to be used to denote the DC_difference value. ram_dc_diff . Table 1 in document
   
--   PROCESS (CLK)
--   BEGIN
--      IF (CLK'EVENT AND CLK = '1') THEN
--	     CASE dc_in IS
--         WHEN "111111111111" => size <= "0001";    
--         WHEN "11111111110-" => size <= "0010";    
--         WHEN "1111111110--" => size <= "0011";    
--         WHEN "111111110---" => size <= "0100";    
--         WHEN "11111110----" => size <= "0101";    
--         WHEN "1111110-----" => size <= "0110";    
--         WHEN "111110------" => size <= "0111";    
--         WHEN "11110-------" => size <= "1000";    
--         WHEN "1110--------" => size <= "1001";    
--         WHEN "110---------" => size <= "1010";    
--         WHEN "10----------" => size <= "1011";    
--         WHEN "000000000000" => size <= "0000";    
--         WHEN "000000000001" => size <= "0001";    
--         WHEN "00000000001-" => size <= "0010";    
--         WHEN "0000000001--" => size <= "0011";    
--         WHEN "000000001---" => size <= "0100";    
--         WHEN "00000001----" => size <= "0101";    
--         WHEN "0000001-----" => size <= "0110";    
--         WHEN "000001------" => size <= "0111";    
--         WHEN "00001-------" => size <= "1000";    
--         WHEN "0001--------" => size <= "1001";    
--         WHEN "001---------" => size <= "1010";    
--         WHEN "01----------" => size <= "1011";    
--         WHEN OTHERS => size <= "0000";    
--         END CASE;
--      END IF;
--   END PROCESS;

      PROCESS (CLK)
      VARIABLE size_temp  : std_logic_vector(3 DOWNTO 0);
      BEGIN
      IF (CLK'EVENT AND CLK = '1') THEN
         IF (std_match(dc_in, "111111111111")) THEN 
                  size_temp := "0001";    
         ELSIF (std_match(dc_in, "11111111110-")) THEN 
                  size_temp := "0010";    
         ELSIF (std_match(dc_in, "1111111110--")) THEN 
                  size_temp := "0011";    
         ELSIF (std_match(dc_in, "111111110---")) THEN 
                  size_temp := "0100";    
         ELSIF (std_match(dc_in, "11111110----")) THEN 
                  size_temp := "0101";    
         ELSIF (std_match(dc_in, "1111110-----")) THEN 
                  size_temp := "0110";    
         ELSIF (std_match(dc_in, "111110------")) THEN 
                  size_temp := "0111";    
         ELSIF (std_match(dc_in, "11110-------")) THEN 
                  size_temp := "1000";    
         ELSIF (std_match(dc_in, "1110--------")) THEN 
                  size_temp := "1001";    
         ELSIF (std_match(dc_in, "110---------")) THEN 
                  size_temp := "1010";    
         ELSIF (std_match(dc_in, "10----------")) THEN 
                  size_temp := "1011";    
         ELSIF (std_match(dc_in, "000000000000")) THEN 
                  size_temp := "0000";    
         ELSIF (std_match(dc_in, "000000000001")) THEN 
                  size_temp := "0001";    
         ELSIF (std_match(dc_in, "00000000001-")) THEN 
                  size_temp := "0010";    
         ELSIF (std_match(dc_in, "0000000001--")) THEN 
                  size_temp := "0011";    
         ELSIF (std_match(dc_in, "000000001---")) THEN 
                  size_temp := "0100";    
         ELSIF (std_match(dc_in, "00000001----")) THEN 
                  size_temp := "0101";    
         ELSIF (std_match(dc_in, "0000001-----")) THEN 
                  size_temp := "0110";    
         ELSIF (std_match(dc_in, "000001------")) THEN 
                  size_temp := "0111";    
         ELSIF (std_match(dc_in, "00001-------")) THEN 
                  size_temp := "1000";    
         ELSIF (std_match(dc_in, "0001--------")) THEN 
                  size_temp := "1001";    
         ELSIF (std_match(dc_in, "001---------")) THEN 
                  size_temp := "1010";    
         ELSIF (std_match(dc_in, "01----------")) THEN 
                  size_temp := "1011";    
         ELSE
                  size_temp := "0000";    
         
         END IF;
      END IF;
      size <= size_temp;
   END PROCESS;

   --***************************************************************************
   -- variable length code and the corresponding code length for DC_Differential 
   -- After finding the size of the DC_Differential, the variable length code used to denote it is found. 
   --  After finding the size of the DC_Differential, the variable length code used to denote it is found. 
   -- For example, if the size is 10, 10 bits are used to denote the dc_differential value and a variable 
   -- length code prefix of "111111110" is used along with the 10 bit value. 
   
   -- luma = 1'b1 denotes a luminance block and lume = 1'b0 denotes a chrominance block 
   PROCESS (CLK)
   BEGIN
      IF (CLK'EVENT AND CLK = '1') THEN
         IF (RST = '1') THEN
            vlcode_dc <= "0000000000";    
            codelength_dc <= "0000";    
         ELSE
            IF (cntr64 = "0000001") THEN
               CASE luma IS
                  WHEN '1' =>
                      CASE size IS --ram_dc_size1
                      WHEN "0000" => vlcode_dc <= "0000000100"; codelength_dc <= "0011";    
                      WHEN "0001" => vlcode_dc <= "0000000000"; codelength_dc <= "0010";    
                      WHEN "0010" => vlcode_dc <= "0000000001"; codelength_dc <= "0010";    
                      WHEN "0011" => vlcode_dc <= "0000000101"; codelength_dc <= "0011";    
                      WHEN "0100" => vlcode_dc <= "0000000110"; codelength_dc <= "0011";    
                      WHEN "0101" => vlcode_dc <= "0000001110"; codelength_dc <= "0100";    
                      WHEN "0110" => vlcode_dc <= "0000011110"; codelength_dc <= "0101";    
                      WHEN "0111" => vlcode_dc <= "0000111110"; codelength_dc <= "0110";    
                      WHEN "1000" => vlcode_dc <= "0001111110"; codelength_dc <= "0111";    
                      WHEN "1001" => vlcode_dc <= "0011111110"; codelength_dc <= "1000";    
                      WHEN "1010" => vlcode_dc <= "0111111110"; codelength_dc <= "1001";    
                      WHEN "1011" => vlcode_dc <= "0111111111"; codelength_dc <= "1001";    
                      WHEN OTHERS => vlcode_dc <= "0000000000"; codelength_dc <= "0000";    
                      END CASE;
                  WHEN '0' =>
                      CASE size IS --ram_dc_size2
                      WHEN "0000" => vlcode_dc <= "0000000000"; codelength_dc <= "0010";    
                      WHEN "0001" => vlcode_dc <= "0000000001"; codelength_dc <= "0010";    
                      WHEN "0010" => vlcode_dc <= "0000000010"; codelength_dc <= "0010";    
                      WHEN "0011" => vlcode_dc <= "0000000110"; codelength_dc <= "0011";    
                      WHEN "0100" => vlcode_dc <= "0000001110"; codelength_dc <= "0100";    
                      WHEN "0101" => vlcode_dc <= "0000011110"; codelength_dc <= "0101";    
                      WHEN "0110" => vlcode_dc <= "0000111110"; codelength_dc <= "0110";    
                      WHEN "0111" => vlcode_dc <= "0001111110"; codelength_dc <= "0111";    
                      WHEN "1000" => vlcode_dc <= "0011111110"; codelength_dc <= "1000";    
                      WHEN "1001" => vlcode_dc <= "0111111110"; codelength_dc <= "1001";    
                      WHEN "1010" => vlcode_dc <= "1111111110"; codelength_dc <= "1010";    
                      WHEN "1011" => vlcode_dc <= "1111111111"; codelength_dc <= "1010";    
                      WHEN OTHERS => vlcode_dc <= "0000000000"; codelength_dc <= "0000";    

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色综合久久中文综合久久97 | 日韩中文字幕av电影| 94-欧美-setu| 亚洲人成精品久久久久久| 在线这里只有精品| 天天操天天色综合| 日韩精品一区二区三区视频在线观看| 美女高潮久久久| 久久久不卡网国产精品二区| 国产成人免费视频精品含羞草妖精| 国产精品三级av在线播放| 一本大道久久a久久精二百| 亚洲午夜激情av| 日韩欧美亚洲国产精品字幕久久久| 九一久久久久久| 欧美国产精品v| 欧美在线制服丝袜| 久久综合综合久久综合| 国产精品理伦片| 在线精品视频免费播放| 麻豆精品在线看| 国产精品女同一区二区三区| 在线亚洲免费视频| 久久成人免费网站| 中文字幕一区三区| 欧美一区二区女人| 成人免费视频一区| 亚洲国产精品一区二区尤物区| 日韩精品一区二| 成人av动漫在线| 奇米色777欧美一区二区| 国产精品美女久久久久久久 | av中文一区二区三区| 亚洲成人av中文| 国产亚洲美州欧州综合国| 91黄色免费版| 国产精品123| 午夜天堂影视香蕉久久| 国产精品网站在线观看| 91精品国产综合久久香蕉麻豆| 成人免费黄色在线| 免费黄网站欧美| 亚洲在线视频一区| 国产精品丝袜一区| 欧美不卡激情三级在线观看| 日本韩国欧美在线| 成人免费看黄yyy456| 久热成人在线视频| 日韩中文字幕91| 亚洲综合在线观看视频| 国产三级一区二区| 欧美高清视频在线高清观看mv色露露十八| 国产麻豆成人传媒免费观看| 天天综合天天做天天综合| 国产精品麻豆久久久| 欧美xingq一区二区| 欧美日韩在线不卡| 色欧美日韩亚洲| 成人av在线一区二区| 激情综合亚洲精品| 日本va欧美va欧美va精品| 亚洲成人自拍偷拍| 亚洲国产一区二区a毛片| 亚洲欧洲精品一区二区三区| 日本一区二区视频在线| www久久久久| 26uuu亚洲婷婷狠狠天堂| 欧美一区二区三区视频免费| 欧美日韩亚洲综合在线| 99久久国产免费看| 成人h版在线观看| 国产mv日韩mv欧美| 国产+成+人+亚洲欧洲自线| 国模一区二区三区白浆| 日产国产高清一区二区三区 | 亚洲成av人综合在线观看| 国产精品免费观看视频| 国产精品毛片大码女人| 国产精品久久免费看| 欧美激情自拍偷拍| ●精品国产综合乱码久久久久| 亚洲国产精品黑人久久久| 国产精品网曝门| 最好看的中文字幕久久| 亚洲日本在线a| 亚洲视频小说图片| 亚洲一区二区中文在线| 亚洲一区二区三区四区不卡| 亚洲国产中文字幕| 秋霞午夜鲁丝一区二区老狼| 免费精品视频在线| 韩日欧美一区二区三区| 国产乱码字幕精品高清av| 激情文学综合插| 国产91精品一区二区麻豆亚洲| 国产一区999| 99久久精品久久久久久清纯| 99精品国产91久久久久久| 色天使色偷偷av一区二区| 91精品国产综合久久久久久漫画 | 久久日一线二线三线suv| 国产蜜臀av在线一区二区三区| 亚洲青青青在线视频| 亚洲国产精品嫩草影院| 日韩电影网1区2区| 国产毛片精品一区| 99re成人精品视频| 欧美视频一区二| 精品久久一二三区| 中文字幕五月欧美| 亚洲地区一二三色| 国产在线日韩欧美| 91啪亚洲精品| 欧美一区二区在线看| 久久精品视频免费观看| 一区二区三区不卡在线观看 | 国产美女精品在线| 在线免费观看日本一区| 日韩一区二区免费在线电影| 国产精品欧美久久久久无广告| 亚洲欧美韩国综合色| 久久精品国产精品亚洲精品| 波多野结衣欧美| 欧美疯狂做受xxxx富婆| 中国av一区二区三区| 日韩1区2区3区| 91欧美一区二区| 精品人伦一区二区色婷婷| 中文字幕在线观看不卡| 九九视频精品免费| 99re热视频精品| 久久综合资源网| 亚洲国产sm捆绑调教视频| 粉嫩aⅴ一区二区三区四区| 91精品黄色片免费大全| 亚洲色图欧美激情| 国产一二精品视频| 91精彩视频在线| 国产精品人妖ts系列视频| 久草精品在线观看| 欧美日本免费一区二区三区| 国产精品久久久久婷婷二区次| 免费观看一级特黄欧美大片| 欧美午夜视频网站| 最近中文字幕一区二区三区| 国产精品69久久久久水密桃| 色视频欧美一区二区三区| 久久久99久久| 麻豆91在线看| 欧美日韩一区三区四区| 综合久久国产九一剧情麻豆| 国产精品白丝av| 2023国产精品| 国产综合色视频| 欧美电影免费观看高清完整版| 天天亚洲美女在线视频| 欧洲精品视频在线观看| 日韩久久一区二区| 国产精品一区二区男女羞羞无遮挡| 精品国产91久久久久久久妲己| 日韩精品视频网站| 欧美午夜精品一区二区蜜桃| 国产精品久久三区| 91视频国产资源| 亚洲视频香蕉人妖| 91在线精品一区二区三区| 中文字幕成人在线观看| 国产 欧美在线| 国产亚洲自拍一区| 成人综合婷婷国产精品久久免费| 26uuu色噜噜精品一区| 国产成人精品亚洲777人妖| 久久精品无码一区二区三区| 久久99国产精品免费| 欧美精品在线视频| 午夜精品影院在线观看| 欧美精品v国产精品v日韩精品| 亚洲777理论| 制服丝袜亚洲网站| 久久国产婷婷国产香蕉| 777久久久精品| 激情综合色丁香一区二区| 精品成a人在线观看| 国产在线国偷精品产拍免费yy | 91精品1区2区| 亚洲国产精品一区二区www在线| 欧美美女直播网站| 男男视频亚洲欧美| 精品久久久久99| 国产+成+人+亚洲欧洲自线| 日韩毛片视频在线看| 在线免费视频一区二区| 日日骚欧美日韩| 精品国产乱码久久久久久久久 | 色视频欧美一区二区三区| 亚洲成人午夜影院| 精品久久久久香蕉网| 成人免费av网站| 亚洲第一电影网| 久久蜜桃一区二区|