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

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

?? adio_codec.v

?? 這是一個基于DE2平臺的工程
?? V
字號:
module adio_codec (
output			oAUD_DATA,
output			oAUD_LRCK,
output	reg		oAUD_BCK,
input key1_on,
input key2_on,
input key3_on,
input key4_on,

input	[1:0]	iSrc_Select,
input			iCLK_18_4,
input			iRST_N,
input   [15:0]	sound1,
input   [15:0]	sound2,
input   [15:0]	sound3,
input   [15:0]	sound4,

input           instru

						);				

parameter	REF_CLK			=	18432000;	//	18.432	MHz
parameter	SAMPLE_RATE		=	48000;		//	48		KHz
parameter	DATA_WIDTH		=	16;			//	16		Bits
parameter	CHANNEL_NUM		=	2;			//	Dual Channel

parameter	SIN_SAMPLE_DATA	=	48;



////////////	Input Source Number	//////////////
parameter	SIN_SANPLE		=	0;
//////////////////////////////////////////////////
//	Internal Registers and Wires
reg		[3:0]	BCK_DIV;
reg		[8:0]	LRCK_1X_DIV;
reg		[7:0]	LRCK_2X_DIV;
reg		[6:0]	LRCK_4X_DIV;
reg		[3:0]	SEL_Cont;
////////	DATA Counter	////////
reg		[5:0]	SIN_Cont;
////////////////////////////////////
reg							LRCK_1X;
reg							LRCK_2X;
reg							LRCK_4X;

////////////	AUD_BCK Generator	//////////////
always@(posedge iCLK_18_4 or negedge iRST_N)
begin
	if(!iRST_N)
	begin
		BCK_DIV		<=	0;
		oAUD_BCK	<=	0;
	end
	else
	begin
		if(BCK_DIV >= REF_CLK/(SAMPLE_RATE*DATA_WIDTH*CHANNEL_NUM*2)-1 )
		begin
			BCK_DIV		<=	0;
			oAUD_BCK	<=	~oAUD_BCK;
		end
		else
		BCK_DIV		<=	BCK_DIV+1;
	end
end
//////////////////////////////////////////////////
////////////	AUD_LRCK Generator	//////////////
always@(posedge iCLK_18_4 or negedge iRST_N)
begin
	if(!iRST_N)
	begin
		LRCK_1X_DIV	<=	0;
		LRCK_2X_DIV	<=	0;
		LRCK_4X_DIV	<=	0;
		LRCK_1X		<=	0;
		LRCK_2X		<=	0;
		LRCK_4X		<=	0;
	end
	else
	begin
		//	LRCK 1X
		if(LRCK_1X_DIV >= REF_CLK/(SAMPLE_RATE*2)-1 )
		begin
			LRCK_1X_DIV	<=	0;
			LRCK_1X	<=	~LRCK_1X;
		end
		else
		LRCK_1X_DIV		<=	LRCK_1X_DIV+1;
		//	LRCK 2X
		if(LRCK_2X_DIV >= REF_CLK/(SAMPLE_RATE*4)-1 )
		begin
			LRCK_2X_DIV	<=	0;
			LRCK_2X	<=	~LRCK_2X;
		end
		else
		LRCK_2X_DIV		<=	LRCK_2X_DIV+1;		
		//	LRCK 4X
		if(LRCK_4X_DIV >= REF_CLK/(SAMPLE_RATE*8)-1 )
		begin
			LRCK_4X_DIV	<=	0;
			LRCK_4X	<=	~LRCK_4X;
		end
		else
		LRCK_4X_DIV		<=	LRCK_4X_DIV+1;		
	end
end
assign	oAUD_LRCK	=	LRCK_1X;
//////////////////////////////////////////////////
//////////	Sin LUT ADDR Generator	//////////////
always@(negedge LRCK_1X or negedge iRST_N)
begin
	if(!iRST_N)
	SIN_Cont	<=	0;
	else
	begin
		if(SIN_Cont < SIN_SAMPLE_DATA-1 )
		SIN_Cont	<=	SIN_Cont+1;
		else
		SIN_Cont	<=	0;
	end
end


///////////////////Wave-Source generate////////////////
////////////Timbre selection & SoundOut///////////////
	wire [15:0]music1_ramp;
	wire [15:0]music2_ramp;
	wire [15:0]music1_sin;
	wire [15:0]music2_sin;
	wire [15:0]music3_ramp;
	wire [15:0]music4_ramp;
	wire [15:0]music3_sin;
	wire [15:0]music4_sin;
	wire [15:0]music1=(instru)?music1_ramp:music1_sin;
	wire [15:0]music2=(instru)?music2_ramp:music2_sin;
	wire [15:0]music3=(instru)?music3_ramp:music3_sin;
	wire [15:0]music4=(instru)?music4_ramp:music4_sin;
	wire [15:0]sound_o;
	assign sound_o=music1+music2+music3+music4;	
	always@(negedge oAUD_BCK or negedge iRST_N)begin
		if(!iRST_N)
			SEL_Cont	<=	0;
		else
			SEL_Cont	<=	SEL_Cont+1;
	end
	assign	oAUD_DATA	=	((key4_on|key3_on|key2_on|key1_on) && (iSrc_Select==SIN_SANPLE))	?	sound_o[~SEL_Cont]	:0;

//////////Ramp address generater//////////////
	reg  [15:0]ramp1;
	reg  [15:0]ramp2;
	reg  [15:0]ramp3;
	reg  [15:0]ramp4;
	wire [15:0]ramp_max=60000;
//////CH1 Ramp//////
	always@(negedge key1_on or negedge LRCK_1X)begin
	if (!key1_on)
		ramp1=0;
	else if (ramp1>ramp_max) ramp1=0;
	else ramp1=ramp1+sound1;
	end

//////CH2 Ramp//////
	always@(negedge key2_on or negedge LRCK_1X)begin
	if (!key2_on)
		ramp2=0;
	else if (ramp2>ramp_max) ramp2=0;
	else ramp2=ramp2+sound2;
	end

//////CH3 Ramp/////
	always@(negedge key3_on or negedge LRCK_1X)begin
	if (!key3_on)
		ramp3=0;
	else if (ramp3>ramp_max) ramp3=0;
	else ramp3=ramp3+sound3;
	end

//////CH3 Ramp/////
	always@(negedge key4_on or negedge LRCK_1X)begin
	if (!key4_on)
		ramp4=0;
	else if (ramp4>ramp_max) ramp4=0;
	else ramp4=ramp4+sound4;
	end

////////////Ramp address assign//////////////
	wire [5:0]ramp1_ramp=(instru)?ramp1[15:10]:0;
	wire [5:0]ramp2_ramp=(instru)?ramp2[15:10]:0;
	wire [5:0]ramp3_ramp=(instru)?ramp3[15:10]:0;
	wire [5:0]ramp4_ramp=(instru)?ramp4[15:10]:0;
	wire [5:0]ramp1_sin=(!instru)?ramp1[15:10]:0;
	wire [5:0]ramp2_sin=(!instru)?ramp2[15:10]:0;
	wire [5:0]ramp3_sin=(!instru)?ramp3[15:10]:0;
	wire [5:0]ramp4_sin=(!instru)?ramp4[15:10]:0;

////////String-wave Timbre///////
	wave_gen_string r1(
		.ramp(ramp1_ramp),
		.music_o(music1_ramp)
	);
	wave_gen_string r2(
		.ramp(ramp2_ramp),
		.music_o(music2_ramp)
	);
	wave_gen_string r3(
		.ramp(ramp3_ramp),
		.music_o(music3_ramp)
	);
	wave_gen_string r4(
		.ramp(ramp4_ramp),
		.music_o(music4_ramp)
	);

/////////Brass-wave Timbre////////
	wave_gen_brass s1(
		.ramp(ramp1_sin),
		.music_o(music1_sin)
	);
	wave_gen_brass s2(
		.ramp(ramp2_sin),
		.music_o(music2_sin)
	);
	wave_gen_brass s3(
		.ramp(ramp3_sin),
		.music_o(music3_sin)
	);
	wave_gen_brass s4(
		.ramp(ramp4_sin),
		.music_o(music4_sin)
	);

endmodule

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人国产免费视频| 久草这里只有精品视频| 久久青草国产手机看片福利盒子| 欧美日韩国产首页| 欧美日韩精品高清| 欧美日韩在线观看一区二区| 欧美性大战久久久久久久蜜臀| 日本道色综合久久| 在线观看亚洲一区| 欧美电影一区二区| 日韩一级片网站| 久久婷婷成人综合色| 中文一区二区完整视频在线观看| 国产欧美视频在线观看| 国产精品理论片| 亚洲自拍都市欧美小说| 亚洲高清视频在线| 蜜桃一区二区三区在线| 狠狠色狠狠色合久久伊人| 粉嫩高潮美女一区二区三区| a级高清视频欧美日韩| 91国偷自产一区二区使用方法| 欧美色视频在线| 日韩精品一区二区三区视频在线观看| 久久久蜜桃精品| 亚洲欧美一区二区久久| 天天色图综合网| 国产一区不卡在线| 在线免费观看视频一区| 日韩美女天天操| 中文欧美字幕免费| 午夜激情综合网| 国产成人av一区二区三区在线| 99精品黄色片免费大全| 欧美精品电影在线播放| 久久久久久97三级| 亚洲一区在线观看免费观看电影高清| 久久狠狠亚洲综合| 色哟哟精品一区| 精品国产成人在线影院| 亚洲青青青在线视频| 精久久久久久久久久久| 色综合一区二区| xf在线a精品一区二区视频网站| 亚洲欧美日韩中文字幕一区二区三区 | 视频在线在亚洲| 国产九色sp调教91| 欧美日韩成人综合天天影院| 国产欧美日韩激情| 免费看日韩精品| 色噜噜狠狠成人中文综合| 国产亚洲一区字幕| 日本少妇一区二区| 日本韩国一区二区三区| 中国av一区二区三区| 强制捆绑调教一区二区| 色婷婷av久久久久久久| 国产精品久久久久精k8| 国产又黄又大久久| 欧美一级二级三级蜜桃| 午夜精品一区二区三区电影天堂| 99综合电影在线视频| 久久久久亚洲蜜桃| 精品伊人久久久久7777人| 欧美一级一区二区| 无吗不卡中文字幕| 欧美视频在线一区二区三区 | 天堂蜜桃一区二区三区| 色偷偷88欧美精品久久久| 久久免费精品国产久精品久久久久| 久久99久久99| 91精品久久久久久久久99蜜臂| 一区二区欧美精品| 色综合久久天天| 亚洲男女一区二区三区| 色域天天综合网| 亚洲综合激情小说| 欧美日精品一区视频| 亚洲18女电影在线观看| 欧美人与性动xxxx| 亚洲成av人综合在线观看| 欧美日韩亚洲综合在线 欧美亚洲特黄一级 | 91女神在线视频| 一区二区日韩av| 欧美日韩国产精选| 奇米亚洲午夜久久精品| 精品国产不卡一区二区三区| 国产剧情一区在线| 国产精品激情偷乱一区二区∴| 成人av集中营| 亚洲一区欧美一区| 欧美一区二区啪啪| 国产精品996| 国产精品久久久久久久久免费相片| 99在线热播精品免费| 亚洲激情男女视频| 91精品国产综合久久婷婷香蕉| 日本欧美大码aⅴ在线播放| 久久久久久亚洲综合| 成人18精品视频| 午夜精品久久久久久不卡8050| 日韩免费看网站| 99热这里都是精品| 亚洲午夜成aⅴ人片| 欧美v国产在线一区二区三区| 成人亚洲精品久久久久软件| 亚洲精品成人a在线观看| 欧美一区二区日韩| 成人激情动漫在线观看| 午夜精品一区在线观看| 中文字幕精品一区二区精品绿巨人 | 丁香婷婷综合激情五月色| 亚洲精品视频在线观看网站| 91精品国产高清一区二区三区 | 亚洲美女屁股眼交3| 91精品久久久久久蜜臀| 成人免费黄色在线| 日日摸夜夜添夜夜添亚洲女人| 久久久不卡影院| 欧美在线啊v一区| 国产精品18久久久久久久久久久久| 一区二区三区国产精华| 久久综合国产精品| 欧美日韩国产123区| eeuss鲁片一区二区三区| 久久精品二区亚洲w码| 亚洲一区av在线| 国产精品婷婷午夜在线观看| 日韩欧美中文一区| 欧美亚洲一区二区在线| bt欧美亚洲午夜电影天堂| 激情av综合网| 日本伊人精品一区二区三区观看方式| 中文字幕一区二区三区不卡| 久久综合精品国产一区二区三区| 欧美性猛片aaaaaaa做受| 成人精品鲁一区一区二区| 日本特黄久久久高潮| 亚洲成人av一区| 一区二区国产视频| 亚洲人被黑人高潮完整版| 国产女主播在线一区二区| 久久久亚洲精品一区二区三区| 欧美二区三区91| 在线观看91精品国产入口| 91在线播放网址| 91亚洲男人天堂| 99视频热这里只有精品免费| 成人美女视频在线看| 国产成人自拍网| 粉嫩嫩av羞羞动漫久久久 | 亚洲一级二级在线| 亚洲蜜臀av乱码久久精品| 国产精品久久久久久久久免费桃花| 久久精品视频一区| 国产亚洲欧美一级| 日本一区二区三区在线不卡| 久久久精品一品道一区| 久久久久免费观看| 国产精品理伦片| 一区二区三区.www| 亚洲图片一区二区| 免费成人在线观看| 国产中文字幕一区| 成人免费视频网站在线观看| 不卡在线观看av| 日本久久电影网| 7878成人国产在线观看| 欧美一区二区三区男人的天堂| 日韩免费高清电影| 国产亚洲精久久久久久| 亚洲私人黄色宅男| 亚洲成av人片一区二区三区| 免费看黄色91| 成人中文字幕合集| 色狠狠综合天天综合综合| 欧美一区二区三区小说| 久久精品男人天堂av| 亚洲色图欧美偷拍| 日韩高清不卡在线| 国产精品69久久久久水密桃| 色又黄又爽网站www久久| 91精品国产91久久综合桃花| 久久影院视频免费| 亚洲夂夂婷婷色拍ww47| 久国产精品韩国三级视频| 91视频在线观看| 717成人午夜免费福利电影| 久久蜜桃av一区二区天堂| 亚洲一区二区四区蜜桃| 精品一区在线看| 色婷婷av一区二区三区软件| 精品国产伦一区二区三区观看方式| 国产精品污网站| 免费成人结看片| 日本韩国视频一区二区| 精品盗摄一区二区三区| 一区二区三区在线免费视频| 精品伊人久久久久7777人| 在线日韩一区二区|