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

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

?? gh_r_2_polar_28.vhd

?? VHDL Library for 8254 timer/counter core
?? VHD
字號:
-----------------------------------------------------------------------------
--	Filename:	gh_r_2_polar_28.vhd
--
--	Description:
--		uses the cordic algorithm to preform rectangular to polar conversion 
--
--	Copyright (c) 2005, 2006, 2008 by George Huber 
--		an OpenCores.org Project
--		free to use, but see documentation for conditions  
--
--	Revision 	History:
--	Revision 	Date      	Author   	Comment
--	-------- 	----------	---------	-----------
--	1.0      	09/03/05  	S A Dodd 	Initial revision
--	1.1      	09/10/05  	S A Dodd 	fix spelling of compare
--	2.0     	09/17/05  	h LeFevre	add gh_ to library parts
--	2.1      	02/18/06  	G Huber 	add gh_ to name
--	2.2     	10/11/08  	h lefevre	version with 28 bit atan function
--
-----------------------------------------------------------------------------

LIBRARY ieee;
USE ieee.std_logic_1164.all;
use IEEE.STD_LOGIC_arith.all;
use IEEE.std_logic_unsigned.all;

entity gh_r_2_polar_28 is
	GENERIC (size: INTEGER := 16; -- size of x,y vectors
	         iterations: INTEGER :=15);	-- can not be larger than size
	port(
		clk  : in STD_LOGIC;
	 	rst  : in STD_LOGIC; 
		x_in : in STD_LOGIC_VECTOR(size-1 downto 0);
		y_in : in STD_LOGIC_VECTOR(size-1 downto 0);
		mag  : out STD_LOGIC_VECTOR(size-1 downto 0);
		ang  : out STD_LOGIC_VECTOR(size-1 downto 0)
		);
end entity;

architecture a of gh_r_2_polar_28 is

component gh_cordic_vectoring_28 is
	GENERIC (size: INTEGER := 16;
	         iterations: INTEGER := 15);
	PORT(
		clk  : IN  STD_LOGIC;
		rst  : in STD_LOGIC;
		x_in , y_in, z_in   : IN  STD_LOGIC_VECTOR (size-1 downto 0);
		x_out, y_out : OUT STD_LOGIC_VECTOR (size-1 downto 0);
		z_out : OUT STD_LOGIC_VECTOR (27 downto 0)
		);
end component gh_cordic_vectoring_28;

component gh_compare_abs is	
	GENERIC (size: INTEGER := 16);
	PORT(	
		A      : IN  STD_LOGIC_VECTOR(size-1 DOWNTO 0);
		B      : IN  STD_LOGIC_VECTOR(size-1 DOWNTO 0);
		AGB    : OUT STD_LOGIC;
		AEB    : OUT STD_LOGIC;
		ALB    : OUT STD_LOGIC;
		AS     : OUT STD_LOGIC; -- A sign bit
		BS     : OUT STD_LOGIC; -- B sign bit
		ABS_A  : OUT STD_LOGIC_VECTOR(size-1 DOWNTO 0);
		ABS_B  : OUT STD_LOGIC_VECTOR(size-1 DOWNTO 0)
		);
end component gh_compare_abs;

component gh_register is	
	GENERIC (size: INTEGER := 8);
	PORT(	
			clk  : IN		STD_LOGIC;
			rst  : IN		STD_LOGIC; 
			D  	 : IN		STD_LOGIC_VECTOR(size-1 DOWNTO 0);
			Q    : OUT		STD_LOGIC_VECTOR(size-1 DOWNTO 0)
		);
end component gh_register;

component gh_shift_reg is	
	GENERIC (size: INTEGER := 16); 
	PORT(
		clk : IN STD_logic;
		rst : IN STD_logic;
		D   : IN STD_LOGIC;
		Q   : OUT STD_LOGIC_VECTOR(size-1 DOWNTO 0)
		);
end component gh_shift_reg;

	signal XLY    : STD_LOGIC;
	signal dXLY   : STD_LOGIC_VECTOR(iterations DOWNTO 0);
	signal Xsign  : STD_LOGIC;
	signal dXS    : STD_LOGIC_VECTOR(iterations DOWNTO 0);
	signal Ysign  : STD_LOGIC;
	signal dYS    : STD_LOGIC_VECTOR(iterations DOWNTO 0);
	signal xin    : STD_LOGIC_VECTOR(size DOWNTO 0);
	signal yin    : STD_LOGIC_VECTOR(size DOWNTO 0);
	signal ix     : STD_LOGIC_VECTOR(size DOWNTO 0);
	signal iy     : STD_LOGIC_VECTOR(size DOWNTO 0);
	signal dix    : STD_LOGIC_VECTOR(size DOWNTO 0);
	signal diy    : STD_LOGIC_VECTOR(size DOWNTO 0);
	signal iix    : STD_LOGIC_VECTOR(size DOWNTO 0);
	signal iiy    : STD_LOGIC_VECTOR(size DOWNTO 0); 
	signal angle  : STD_LOGIC_VECTOR(27 DOWNTO 0);
	signal angle1 : STD_LOGIC_VECTOR(27 DOWNTO 0);
	signal angle2 : STD_LOGIC_VECTOR(size-1 DOWNTO 0);
	signal imag   : STD_LOGIC_VECTOR(size DOWNTO 0);
	signal mode   : STD_LOGIC_VECTOR(2 DOWNTO 0);
	
	signal aix    : STD_LOGIC_VECTOR(size DOWNTO 0);
	signal aiy    : STD_LOGIC_VECTOR(size DOWNTO 0);
	signal aXLY   : STD_LOGIC;
	signal aXsign : STD_LOGIC;
	signal aYsign : STD_LOGIC;
-------------------------------------------------------------------
------------- constants -------------------------------------------

	constant zero : STD_LOGIC_VECTOR(size DOWNTO 0) := (others => '0');
	constant half_pi : STD_LOGIC_VECTOR(27 DOWNTO 0) := x"4000000";	
	constant pi : STD_LOGIC_VECTOR(27 DOWNTO 0) := x"8000000";	
	constant pi_and_half : STD_LOGIC_VECTOR(27 DOWNTO 0) := x"C000000";	
	signal two_pi : STD_LOGIC_VECTOR(27 DOWNTO 0) := x"0000000";

--------------------------------------------------------------------

begin

---- here, the CORDIC is used from 0 to pi/4
---- this is used in the mapping

	xin <= (x_in(size-1) & x_in);
	yin <= (y_in(size-1) & y_in);

	u1: gh_compare_ABS generic map (size+1) 
	               port map(
	               A => xin,
	               B => yin,
	               ALB => aXLY,
				   AS => aXsign,
				   BS => aYsign,
	               ABS_A => aix,
	               ABS_B => aiy
	               );
				   
-----------------------------------------------------------
------------ add 10-17-07 ---------------------------------

process (clk,rst) 
begin
	if (rst = '1') then
		XLY <= '0';
		Xsign <= '0';
		Ysign <= '0';
		ix <= (others => '0');
		iy <= (others => '0');
	elsif (rising_edge(clk)) then
		XLY <= aXLY;
		Xsign <= aXsign;
		Ysign <= aYsign;
		ix <= aix;
		iy <= aiy;
	end if;
end process;

---------------------------------------------------------------

---- delay the mapping to match the CORDIC delay
	u2:	gh_shift_reg generic map (size => iterations+1)
	              port map(
	              clk => clk, 
	              rst => rst, 
	              D => XLY, 
	              Q => dXLY);
				  
	u3:	gh_shift_reg generic map (size => iterations+1)
	              port map(
	              clk => clk, 
	              rst => rst, 
	              D => Xsign, 
	              Q => dXS);
				  
	u4:	gh_shift_reg generic map (size => iterations+1)
	              port map(
	              clk => clk, 
	              rst => rst, 
	              D => Ysign, 
	              Q => dYS);

---- finish mapping of the CORDIC inputs
	u5: gh_register generic map (size+1) 
	           port map (clk,rst,ix,dix);

	u6: gh_register generic map (size+1) 
	           port map (clk,rst,iy,diy);		

	iix <= diy when (dXLY(0) = '1') else
	       dix;
		  
	iiy <= dix when (dXLY(0) = '1') else
	       diy;								 
	
		
	u7:	gh_cordic_vectoring_28  generic map(size+1,iterations)
	            port map(clk,rst,iix,iiy,zero,imag,open,angle);	

----  remap the output phase value to o to 2pi
	mode <= dXLY(iterations) & dXS(iterations) & dYS(iterations);
				
process (mode,angle) 
begin
case mode is
	when "000" =>  -- 0 to pi/4
		angle1 <= angle;
	when "001" => -- 7pi/4 to 2pi
		angle1 <= two_pi - angle;	
	when "010" => -- 3pi/4 to pi
		angle1 <= pi - angle;
	when "011" => -- pi to 5pi/4 
		angle1 <= pi + angle;
	when "100" => -- pi/4 to pi/2
		angle1 <= half_pi - angle;
	when "101" => -- 3pi/2 to 7pi/4
		angle1 <= pi_and_half + angle;	
	when "110" => -- pi/2 to 3pi/4 
		angle1 <= half_pi + angle;	
	when others => -- 5pi/4 to 3pi/2
		angle1 <= pi_and_half - angle;
end case;
end process;


	angle2 <= angle1(27 downto 28-size);

-- register the outputs

	u8: gh_register generic map (size) 
	           port map (clk,rst,angle2,ang);	

	u9: gh_register generic map (size) 
	           port map (clk,rst,imag(size downto 1),mag);	

			  
end a;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲免费在线电影| 国产精品国产自产拍在线| 色偷偷久久人人79超碰人人澡| 国内精品伊人久久久久影院对白| 青青草国产成人99久久| 麻豆国产91在线播放| 久久 天天综合| 国产酒店精品激情| 成人三级在线视频| www.在线成人| 欧美亚洲国产一区二区三区va| 在线观看av一区二区| 7777精品伊人久久久大香线蕉完整版 | 国产精品美女一区二区在线观看| 国产三级一区二区三区| 国产精品私人影院| 亚洲美女淫视频| 婷婷久久综合九色综合绿巨人| 三级成人在线视频| 久久99热这里只有精品| 成人中文字幕合集| 91丝袜国产在线播放| 欧美日韩国产高清一区二区三区| 3atv一区二区三区| 久久综合av免费| 中文字幕免费一区| 亚洲成人资源网| 蜜臀av性久久久久蜜臀aⅴ四虎| 国产精品一区二区黑丝| 91色乱码一区二区三区| 555夜色666亚洲国产免| 国产日韩欧美一区二区三区乱码| 一区二区视频免费在线观看| 日韩电影网1区2区| 成+人+亚洲+综合天堂| 欧美美女bb生活片| 国产精品久久久久桃色tv| 亚洲福利电影网| 激情五月婷婷综合| 欧美艳星brazzers| 国产精品色在线观看| 免费看精品久久片| 色噜噜久久综合| 亚洲精品一区二区三区四区高清 | 欧美日韩中文字幕精品| 欧美大胆人体bbbb| 亚洲精品欧美激情| 国产·精品毛片| 正在播放一区二区| 亚洲精品老司机| 成人午夜激情在线| 精品对白一区国产伦| 天堂精品中文字幕在线| 菠萝蜜视频在线观看一区| 精品国产一区二区三区四区四| 亚洲精品水蜜桃| 成人免费看片app下载| 久久只精品国产| 免费一级片91| 欧美美女喷水视频| 亚洲国产成人91porn| 91小视频在线| 国产精品乱人伦| 国产精品一区二区无线| 精品国产三级a在线观看| 性久久久久久久久久久久| 日本精品免费观看高清观看| 国产亚洲欧洲一区高清在线观看| 另类小说综合欧美亚洲| 4hu四虎永久在线影院成人| 一区二区免费在线播放| 91丝袜美女网| 一区二区三区免费网站| 91色乱码一区二区三区| 亚洲乱码一区二区三区在线观看| 成人手机电影网| 国产精品不卡视频| 色狠狠综合天天综合综合| 亚洲图片激情小说| 在线观看www91| 亚洲一区日韩精品中文字幕| 欧美综合一区二区| 亚洲国产综合人成综合网站| 欧美人狂配大交3d怪物一区| 亚洲精品久久久蜜桃| 欧美日韩精品三区| 日本特黄久久久高潮| 日韩欧美国产一区二区在线播放| 免费观看在线综合| 久久精品视频网| 97久久人人超碰| 亚洲一区在线免费观看| 制服丝袜av成人在线看| 国产一区二区三区精品欧美日韩一区二区三区| 日韩欧美自拍偷拍| 国产精品一区2区| 国产精品国产成人国产三级| 色国产精品一区在线观看| 一区二区三区国产豹纹内裤在线| 欧美视频精品在线观看| 久久av中文字幕片| 1000精品久久久久久久久| 欧美日韩和欧美的一区二区| 精品一区二区免费| 亚洲欧美日韩在线播放| 欧美日韩aaaaa| 国产麻豆精品视频| 亚洲午夜三级在线| 久久久综合视频| 91浏览器在线视频| 麻豆精品国产91久久久久久| 国产精品久久福利| 91精品国产综合久久精品麻豆 | av影院午夜一区| 天堂精品中文字幕在线| 欧美高清在线视频| 欧美乱熟臀69xxxxxx| 国产精品123| 亚洲va韩国va欧美va精品| 337p日本欧洲亚洲大胆色噜噜| 成人h精品动漫一区二区三区| 午夜国产不卡在线观看视频| 国产精品日产欧美久久久久| 在线成人午夜影院| 91伊人久久大香线蕉| 美女mm1313爽爽久久久蜜臀| 亚洲激情五月婷婷| 国产精品久久久久影院| 欧美精品一区视频| 日韩一区二区三区精品视频| 日本韩国欧美一区二区三区| 国产精品夜夜爽| 久久99深爱久久99精品| 亚洲二区在线视频| 亚洲视频一区二区在线观看| 久久亚洲精品国产精品紫薇| 日韩欧美不卡一区| 欧美精品 国产精品| 在线一区二区三区四区| 99久久国产综合精品麻豆| 国产酒店精品激情| 精品一区二区日韩| 黄网站免费久久| 蜜桃一区二区三区在线| 日本美女一区二区三区视频| 亚洲影视在线观看| 亚洲视频狠狠干| 亚洲日韩欧美一区二区在线| 欧美激情在线看| 国产欧美综合在线观看第十页| 337p粉嫩大胆色噜噜噜噜亚洲| 日韩精品一区二区三区视频在线观看 | 亚洲第一在线综合网站| 亚洲一区二区三区国产| 亚洲一级在线观看| 一区二区在线观看免费视频播放 | 亚洲成人资源在线| 亚洲成年人影院| 婷婷激情综合网| 免费欧美日韩国产三级电影| 久久精品国产77777蜜臀| 精品一区在线看| 国产乱码精品一区二区三区忘忧草 | 久久久不卡网国产精品二区| 久久日韩精品一区二区五区| 精品国产乱码久久久久久图片| 精品久久久久久综合日本欧美| 日韩免费高清av| 国产欧美日韩卡一| 亚洲图片激情小说| 午夜视频一区二区| 久久国产精品99久久久久久老狼| 国产精品一级二级三级| 91麻豆免费在线观看| 欧美日韩国产综合草草| 精品久久久久久亚洲综合网 | 色综合天天做天天爱| 欧美熟乱第一页| 精品人在线二区三区| 国产精品青草综合久久久久99| 一区二区三区日韩欧美| 蜜桃91丨九色丨蝌蚪91桃色| 成人一区二区三区视频在线观看| 91免费版在线| 欧美一级艳片视频免费观看| 精品国产1区二区| 亚洲免费大片在线观看| 日本va欧美va精品发布| 高清不卡一二三区| 欧美日韩成人综合| 国产精品电影一区二区| 日韩av在线播放中文字幕| 国产99精品国产| 精品视频资源站| 国产欧美日韩不卡| 婷婷久久综合九色国产成人| 国产很黄免费观看久久| 欧美麻豆精品久久久久久| 欧美高清一级片在线观看| 奇米影视在线99精品|