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

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

?? compressor.vhd

?? enkoder jpeg - very good
?? VHD
?? 第 1 頁 / 共 5 頁
字號:
------------------------------------------------------------------------------------------------------- Title       : JPEG Hardware Compressor-- Design      : jpeg-- Author      : Victor Lopez Lorenzo-- E-mail      : victor.lopez ((at)) ono ((dot)) com---- License     : Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported--                http://creativecommons.org/licenses/by-nc-sa/3.0/-----------------------------------------------------------------------------------------------------------    Copyright (C) 2004  Victor Lopez Lorenzo------    PLEASE NOTICE THAT THIS CORE IS LICENSED UNDER http://creativecommons.org/licenses/by-nc-sa/3.0/--    (Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported).--    That means you may use it only for NON-COMMERCIAL purposes.-----------------------------------------------------------------------------------------------------------	Contributors :--		Peter Eisemann   -  Fixed GetCategory, writes and file declarations in order to--						simulate code under ModelSim--                                                                                                 ---------------------------------------------------------------------------------------------------------    --    IMPORTANT NOTES :----    This source code features a compliant JPEG compressor Baseline DCT with--    Huffman enconding and 2x2 1x1 1x1 subsampling. The header is the widely--    employed JFIF.----    Baseline DCT JPEG with JFIF header is one of the most used image formats.----    The maximum image size is limited to 352x288----    Another limitation is that the input image must have width and height--    multiple of 16 (that is, an image 32x32 will produce a strictly compliant--    JPEG image file, but not a 32x24 or a 24x32 input image, although the resulting--    image will more likely still be viewable), this is due to the subsampling--    method employed.----    I apologize if you find this code somewhat messy. When I programmed it I imposed--    myself very strict deadlines and making it opensource was not in my mind, mainly--    because, if I were to do it again, I would do it in other way to get much--    more performance. The main problem faced with this implementation was a very--	scarce availability of BlockRAM in the target FPGA, so some areas that could--	perfectly run in parallel, speeding a lot the whole process, had to be made--	sequential in order to save up BlockRAMs. Anyways, this code works--	(it functioned as a webcam, attached to a CMOS sensor) and, though not--	as fast as it could be, it has a good performance.--    --    As a part of this project there is a quite useful Testbench that takes as input--    any BMP (24 bit color) image and compresses it with this code, outputting a JPG--    file that you can view in your computer.-----------------------------------------------------------------------------------------------------library IEEE;use IEEE.STD_LOGIC_1164.all;use IEEE.numeric_std.all;use IEEE.std_logic_unsigned.all; --for arithmetic ops--pragma translate_offlibrary STD;use STD.textio.all;use IEEE.std_logic_textio.all;library XilinxCoreLib;--pragma translate_onlibrary UNISIM; use UNISIM.all; entity Compressor is port ( 	      clk : in STD_LOGIC;	      reset : in STD_LOGIC;         --Control/Status Interface         CompressImage : in std_logic; --must be active high for just one cycle         Compression : in std_logic_vector(1 downto 0); --Quality: 00 = low, 01 = medium, 10 = high         Mono : in std_logic; --active high for grey-scale input image (Red=Green=Blue)         ImgColumns : in std_logic_vector(9 downto 0); --columns in each line of the image to compress         ImgLines : in std_logic_vector(8 downto 0); --lines of the image to compress         Compressing : out std_logic;                  --Data Interface         ProcessRGB : in std_logic;         ProcessingRGB : out std_logic;         Red : in std_logic_vector(7 downto 0);         Green : in std_logic_vector(7 downto 0);         Blue : in std_logic_vector(7 downto 0);                  --JPEG Image BlockRAM (Output) Interface         addr: out std_logic_VECTOR(15 downto 0);         din: out std_logic_VECTOR(7 downto 0);         we: out std_logic);end Compressor;architecture JPG of Compressor is--pragma translate_offfile Debug:   TEXT open WRITE_MODE is "Debug.txt";file DebugY:  TEXT open WRITE_MODE is "DebugY.txt";file DebugCb: TEXT open WRITE_MODE is "DebugCb.txt";file DebugCr: TEXT open WRITE_MODE is "DebugCr.txt";--   file Debug:TEXT is out "Debug.txt";--   file DebugY:TEXT is out "DebugY.txt";--	file DebugCb:TEXT is out "DebugCb.txt";--   file DebugCr:TEXT is out "DebugCr.txt";	constant espacio:string:=" ";   constant espacios:string:="  ";   constant puntoycoma:string:=";";	constant strElemento:string:=" Element: ";   constant strColumna:string:=" Column: ";   constant strLinea:string:=" Line: ";--pragma translate_on   component dct2d port (   	ND: IN std_logic;   	RDY: OUT std_logic;   	RFD: OUT std_logic;   	CLK: IN std_logic;   	DIN: IN std_logic_VECTOR(7 downto 0);   	DOUT: OUT std_logic_VECTOR(18 downto 0));   end component;   component buffer_comp port (   	addr: IN std_logic_VECTOR(12 downto 0);   	clk: IN std_logic;   	din: IN std_logic_VECTOR(11 downto 0);   	dout: OUT std_logic_VECTOR(11 downto 0);   	we: IN std_logic);   end component;      component buffer_comp_chrom port (   	addr: IN std_logic_VECTOR(10 downto 0);   	clk: IN std_logic;   	din: IN std_logic_VECTOR(11 downto 0);   	dout: OUT std_logic_VECTOR(11 downto 0);   	we: IN std_logic);   end component;      component q_rom port (   	addr: IN std_logic_VECTOR(8 downto 0);   	clk: IN std_logic;   	dout: OUT std_logic_VECTOR(12 downto 0));   end component;      component huff_rom port (	   addr: IN std_logic_VECTOR(8 downto 0);	   clk: IN std_logic;	   dout: OUT std_logic_VECTOR(19 downto 0));   end component;   component tabla_q   	port (   	addr: IN std_logic_VECTOR(8 downto 0);   	clk: IN std_logic;   	dout: OUT std_logic_VECTOR(7 downto 0));   end component;      --signals for tabla_q   signal addrTablaQ: std_logic_VECTOR(8 downto 0);  	signal doutTablaQ: std_logic_VECTOR(7 downto 0);      --signal for huff_rom   signal addrH : std_logic_vector(8 downto 0);   signal doutH : std_logic_vector(19 downto 0);      --signals for DCT block	signal ND: std_logic;	signal RDY: std_logic;	signal RFD: std_logic;	signal DIND: std_logic_VECTOR(7 downto 0);	signal DOUTD: std_logic_VECTOR(18 downto 0);      --signals for compression buffer   signal addrY: std_logic_VECTOR(12 downto 0);	signal dinY: std_logic_VECTOR(11 downto 0);	signal doutY: std_logic_VECTOR(11 downto 0);	signal weY: std_logic;   signal addrCb: std_logic_VECTOR(10 downto 0);	signal dinCb: std_logic_VECTOR(11 downto 0);	signal doutCb: std_logic_VECTOR(11 downto 0);	signal weCb: std_logic;   signal addrCr: std_logic_VECTOR(10 downto 0);	signal dinCr: std_logic_VECTOR(11 downto 0);	signal doutCr: std_logic_VECTOR(11 downto 0);	signal weCr: std_logic;                            signal addrY1: std_logic_VECTOR(12 downto 0);   signal addrCb1: std_logic_VECTOR(10 downto 0);      signal addrCr1: std_logic_VECTOR(10 downto 0);      signal addrY2: std_logic_VECTOR(12 downto 0);      signal addrCb2: std_logic_VECTOR(10 downto 0);      signal addrCr2: std_logic_VECTOR(10 downto 0);   	signal dinY1: std_logic_VECTOR(11 downto 0);   signal dinY2: std_logic_VECTOR(11 downto 0);   signal dinCb1: std_logic_VECTOR(11 downto 0);   signal dinCb2: std_logic_VECTOR(11 downto 0);   signal dinCr1: std_logic_VECTOR(11 downto 0);   signal dinCr2: std_logic_VECTOR(11 downto 0);   signal weY1: std_logic;   signal weY2: std_logic;	signal weCb1: std_logic;   signal weCb2: std_logic;	signal weCr1: std_logic;   signal weCr2: std_logic;      --signals for the quantization coefficients ROM   signal addrQ : std_logic_vector(8 downto 0);   signal doutQ : std_logic_vector(12 downto 0);         signal addri : std_logic_vector(15 downto 0); --to write directly to the port (headers and JPEG size) and read from it   signal addribk : std_logic_vector(15 downto 0); --exclusive when signal Save='1', it holds the current pixel   constant MaxImageSize : std_logic_vector(15 downto 0) :="1100011111111100"; --51196 bytes      signal ColumnToCompress : std_logic_vector(9 downto 0);   signal LineToCompress : std_logic_vector(3 downto 0); --goes from 0 to 15, the 16 that may occupy the luminance buffer   signal LineAbsToCompress: std_logic_vector(8 downto 0);   signal MakeDCT : std_logic;   signal CompressingInt : std_logic;      signal Done : std_logic; --the Huffman encoding part rises it for one cycle when finishes   signal StepV : integer range 0 to 5;   signal Save : std_logic;   signal NDe : std_logic;                      signal WriteAdditionalBits : std_logic;      signal WriteTables : std_logic;   signal TableData : std_logic_vector(5 downto 0);   signal Table : std_logic;      signal ZRLing : std_logic;   signal RFDInt : std_logic;   signal RFDIntData : std_logic_vector(7 downto 0);         function Multiplier (Num, Prod : in std_logic_vector) return std_logic_vector;   	function Multiplier (Num, Prod : in std_logic_vector) return std_logic_vector is		variable result : std_logic_vector(19 downto 0) := (others => '0');	begin --8 bits * 10 bits both unsigned = 18 bits      result := ('0' & Num(7 downto 0)) * ('0' & Prod);		return result(17 downto 0);	end Multiplier;   function MultiplierQ (Num, Prod : in std_logic_vector) return std_logic_vector;   	function MultiplierQ (Num, Prod : in std_logic_vector) return std_logic_vector is      variable result : std_logic_vector(26 downto 0);      variable UNum : std_logic_vector(11 downto 0);	begin --it is like Multiplier but admits bigger operands: Num (10..0) (signed) and Prod (10..0) (unsigned)      --max result = 1000_0000_0000 * 111_1111_1111 = 1(sign)11_1111_1111_1000_0000_0000 (-2.048 * 2.047 = -4.192.256)      --UPDATE: now Prod may be of up to 13 bits (12..0), so the result will be 24..0      if Num(Num'High) = '1' then --negative number?         UNum := not (Num) + 1; --two's complement to make it positive      else         UNum := Num;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产欧美一区二区精品性色| 国产一区二区在线电影| 国产午夜精品久久久久久免费视| 日韩免费观看高清完整版| 欧美在线高清视频| 欧美日韩免费视频| 欧美疯狂做受xxxx富婆| 欧美一区二区黄色| 久久人人超碰精品| 国产欧美日韩在线| 国产精品国产三级国产a| 亚洲四区在线观看| 亚洲gay无套男同| 裸体在线国模精品偷拍| 国产一区二区三区四区在线观看 | 精品乱人伦小说| 欧美sm极限捆绑bd| 国产片一区二区三区| 中文字幕中文字幕一区| 一区二区三区国产| 香蕉成人伊视频在线观看| 秋霞午夜av一区二区三区| 美日韩黄色大片| 丁香婷婷综合网| 欧美三区在线观看| 久久综合九色综合久久久精品综合| 久久久久久免费毛片精品| 亚洲色图一区二区三区| 久久国产精品无码网站| 91在线丨porny丨国产| 91精品国产一区二区三区蜜臀| 精品av久久707| 亚洲黄网站在线观看| 久久99九九99精品| 色悠悠久久综合| 精品国产伦理网| 亚洲欧美一区二区三区久本道91 | 日本丰满少妇一区二区三区| 欧美一级精品大片| 国产精品久久久久久亚洲毛片 | 欧美电视剧免费全集观看| 26uuu精品一区二区| 亚洲欧美一区二区久久| 亚洲视频中文字幕| 久久99精品一区二区三区| 日本久久一区二区| 国产亲近乱来精品视频| 久久99久久久欧美国产| 91麻豆免费看| 91女人视频在线观看| 综合激情网...| 亚洲一区二区三区在线| 福利视频网站一区二区三区| 制服丝袜日韩国产| 亚洲高清视频在线| 99精品欧美一区二区三区综合在线| 精品欧美黑人一区二区三区| 午夜久久福利影院| 在线观看日韩精品| 亚洲欧洲国产日韩| 国产成人精品一区二区三区网站观看| 在线不卡中文字幕| 日韩中文字幕麻豆| 欧美影片第一页| 一区二区三区免费| 一本一道波多野结衣一区二区| 欧美国产一区在线| 成人高清伦理免费影院在线观看| 精品国产凹凸成av人网站| 麻豆精品在线观看| 久久无码av三级| 国产一区二区三区免费播放 | 久久国产精品无码网站| 欧美一区二区三区在线看| 亚洲午夜久久久| 欧美色视频在线观看| 亚洲免费资源在线播放| 欧美亚洲国产怡红院影院| 亚洲国产精品一区二区久久| 91福利社在线观看| 亚洲高清不卡在线观看| 欧美日韩一区二区三区免费看| 亚洲国产乱码最新视频 | 91麻豆免费视频| 亚洲激情在线播放| 欧美日本在线一区| 麻豆精品蜜桃视频网站| 欧美本精品男人aⅴ天堂| 久久国产视频网| 久久女同精品一区二区| 不卡影院免费观看| 亚洲成av人片在线| 日韩欧美成人午夜| 欧美日韩一区成人| 日韩国产高清在线| 久久先锋资源网| 91欧美一区二区| 免费的成人av| 久久久99久久| 91色乱码一区二区三区| 奇米精品一区二区三区在线观看 | 色域天天综合网| 亚洲成a天堂v人片| 久久一留热品黄| 成人激情图片网| 日韩国产在线观看一区| 久久久久久一二三区| 91年精品国产| 美女视频网站久久| 综合分类小说区另类春色亚洲小说欧美| 亚洲高清一区二区三区| 欧美一级精品大片| 国产成人在线免费| 亚洲国产成人va在线观看天堂| 精品欧美一区二区三区精品久久| 99久久精品国产毛片| 日本亚洲一区二区| 国产精品久久久久久亚洲伦 | 亚洲精品国产一区二区精华液| 91精品国产美女浴室洗澡无遮挡| 国产精品911| 亚洲高清中文字幕| 中文字幕免费不卡在线| 欧美一级片在线| 91小宝寻花一区二区三区| 国模套图日韩精品一区二区| 亚洲香肠在线观看| 国产精品麻豆欧美日韩ww| 亚洲精品一区二区三区福利| 在线免费观看不卡av| 成人美女视频在线看| 国产一区二区三区日韩| 久久er99热精品一区二区| 亚洲国产乱码最新视频 | 午夜精品一区二区三区免费视频| 国产精品久久久久天堂| 国产清纯美女被跳蛋高潮一区二区久久w| 日韩欧美色综合| 欧美色综合网站| 一本久久a久久免费精品不卡| 蜜臀久久久99精品久久久久久| 一区二区三区国产豹纹内裤在线| 中文字幕一区二区三区av| 久久人人爽爽爽人久久久| 久久人人爽人人爽| 久久久青草青青国产亚洲免观| 日韩午夜激情av| 欧美一区二区日韩| 91精品国产一区二区三区蜜臀| 欧美日韩视频专区在线播放| 欧美日韩亚洲综合一区| 色天天综合久久久久综合片| 99久久er热在这里只有精品66| 成人av免费观看| av不卡免费在线观看| 成人av在线资源网站| 成人美女视频在线观看18| 国产剧情av麻豆香蕉精品| 国产成人亚洲综合a∨婷婷| 懂色av一区二区三区免费看| 波多野洁衣一区| 在线观看日产精品| 欧美精品久久久久久久多人混战 | 欧美三级在线看| 在线不卡一区二区| 精品日韩一区二区三区免费视频| 日韩免费看的电影| 欧美国产欧美综合| 亚洲色图一区二区| 亚洲动漫第一页| 精品一区二区久久| 粉嫩嫩av羞羞动漫久久久 | 欧美96一区二区免费视频| 麻豆精品国产传媒mv男同| 国产一区二区三区不卡在线观看| 国产在线播放一区| heyzo一本久久综合| 色老汉一区二区三区| 欧美日韩精品一区二区三区| 91精品国产品国语在线不卡| 国产欧美日韩综合| 亚洲成av人片一区二区三区| 韩国av一区二区三区在线观看| 99视频一区二区三区| 欧美美女直播网站| 国产精品丝袜久久久久久app| 亚洲国产日韩a在线播放| 国产激情91久久精品导航| 色狠狠一区二区三区香蕉| 欧美精品一区二区三区一线天视频| 国产精品不卡一区| 精品一区在线看| 91黄色免费版| 欧美国产精品一区二区三区| 丝袜a∨在线一区二区三区不卡| 成人午夜免费电影| 日韩美女天天操| 亚洲成人精品一区二区| 不卡欧美aaaaa| 精品久久久久久久人人人人传媒|