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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? matrix_op.v

?? ldpc verilog 程序 做ldpc硬件實(shí)現(xiàn)的可以
?? V
?? 第 1 頁 / 共 3 頁
字號:
module matrix_op( clk,reset,bit_in,bit_in_en, media_in,media_in_en,
				  coder_first,
                  bit_out,bit_out_en, first_out,
                  data_out);

input	clk,reset;
input	bit_in,bit_in_en;
input[126:0]	media_in;
input	media_in_en;
input	coder_first;       //每一組編碼第一個數(shù)據(jù)輸入指示,便于處理相乘后直接存儲到out,不必異或
//input	coder_last;

output[126:0]	data_out;
//output	data_out_en;
output	bit_out;
output	bit_out_en;
output	first_out;

reg first_out;
reg[126:0]	media;
reg	bit_out;
reg	bit_out_en;
reg[126:0]	data_out;
//reg	data_out_en;

always @(posedge clk)
begin
	if (!reset)
		begin
		media <= 127'd0;
		data_out <=	127'd0;
		//data_out_en	<= 1'b0;
		bit_out <= 1'b0;
		bit_out_en <= 1'b0;
		end			
	else
		begin
		if (bit_in_en)
			begin
			if(coder_first)
				begin
				if(bit_in)
					begin
					data_out <= media;
					end
				else
					begin
					data_out <= 127'd0;				
					end
				end
			else
				begin
				if(bit_in)
					begin
					data_out <= data_out^media;
					end
				end
				
		/*	if(coder_last)
				begin
				data_out_en	<= 1'b1;
				end
			else
				begin
				data_out_en	<= 1'b0;
				end	
				*/
				
			media <= {media[0],media[126:1]};
			first_out <= coder_first;
			bit_out <= bit_in;
			bit_out_en <= 1'b1;				
			end
		else
			begin
			bit_out_en<=1'b0;
			//data_out_en	<= 1'b0;
			end	

		if(media_in_en)  //外部保證第127個符號輸入時(shí)同步輸入media初始信息
			begin
			media <= media_in;
			end
		end	
end
endmodule





module LDPC	(clk,reset,
			 data_in, data_in_en,	
			 velocity, /*輸入信號碼率選擇*/
		
			 data_out, data_out_en,
			 indication /*輸出信號,第一個127要刪除前5成7488,指示第一個127*/
				);

input	clk,reset;
input	data_in,data_in_en;
input[1:0]	velocity; //碼率選擇信號
output[126:0]	data_out;//輸出信號
output	data_out_en;
output	indication;


parameter row_4 = 6'd24-1'b1;		// parameter column_4 = 6'd35-1'b1;  //0.4碼率
parameter row_6 = 6'd36-1'b1;		// parameter column_6 = 6'd23-1'b1;  //0.6碼率
parameter row_8 = 6'd48-1'b1;		// parameter column_8 = 6'd11-1'b1;  //0.8碼率
parameter order = 7'd127-1'b1;
parameter state0 = 1'b0; parameter state1 = 1'b1;


reg[5:0] row_num;   // reg[5:0] column_num;//reset時(shí),選擇合適的行,列數(shù)
reg[5:0] count_row;	 // reg[4:0] count_col; // 行列計(jì)數(shù)器
reg[6:0] count_127;
reg	coder_first;

always @ (posedge clk)  // 計(jì)數(shù)器運(yùn)轉(zhuǎn)
	begin
	if (!reset)
		begin
		count_127 <= 7'd0;
		coder_first <= 1'b0;
		case (velocity)
		  2'b01 : 	//0.4碼率
			begin					
			count_row <= 6'd23;  // 減法計(jì)數(shù)器
			row_num <= row_4;
			//column_num <= column_4;		
			end
		  2'b10 :  	//0.6碼率
			begin					
			count_row <= 6'd35;
			row_num <= row_6;
			//column_num <= column_6;	
			end
		  2'b11 :	//0.8碼率
			begin					
			count_row <= 6'd47;
			row_num <= row_8;
			//column_num <= column_8;	
			end	
		default :            // 默認(rèn)0.4碼率
			begin					
			count_row <= 6'd23;
			row_num <= row_4;
			//column_num <= column_4;	
			end
		endcase	
	end
	else
		begin
		if(data_in_en)
			begin
			case (velocity)
			  2'b01 : 	//0.4碼率
				begin					
				if((count_row==6'd23)&&(count_127==0))
					begin
					coder_first<= 1'b1;
					end
				else
					begin
					coder_first<= 1'b0;
					end
				end
			  2'b10 :  	//0.6碼率
				begin					
				if((count_row==6'd35)&&(count_127==0))
					begin
					coder_first<= 1'b1;
					end
				else
					begin
					coder_first<= 1'b0;
					end
				end
			  2'b11 :	//0.8碼率
				begin					
				if((count_row==6'd47)&&(count_127==0))
					begin
					coder_first<= 1'b1;
					end
				else
					begin
					coder_first<= 1'b0;
					end
				end	
			default :            // 默認(rèn)0.4碼率
				begin					
				if((count_row==6'd23)&&(count_127==0))
					begin
					coder_first<= 1'b1;
					end
				else
					begin
					coder_first<= 1'b0;
					end
				end
			endcase	
			
			if(count_127 == order)
				begin
				count_127 <= 7'd0;
				if(count_row == 6'd0)
					begin
					count_row <= row_num;
					end
				else
					begin
					count_row <= count_row - 1'b1;
					end	
				end
			else
				begin
				count_127 <= count_127 + 1'b1;
				end	
			end			
		end
	end


reg	bit_in, bit_in_en;
reg[34:0] media_en;
reg[34:0] media_en0;
reg state;
reg[9:0]	address_04;
reg[9:0]	address_06;
reg[9:0]	address_08;

always @(posedge clk)   // 控制個運(yùn)算模塊初始化等
	begin
	if (!reset)
		begin
		//coder_first <= 1'b0;
		bit_in	<= 1'b0; bit_in_en <= 1'b0;
		media_en <= 35'b00000_0000000000_0000000000_0000000001;     // 初始化時(shí)就寫入第一個media
		address_04 <= 10'd0; address_06 <= 10'd0; address_08 <= 10'd0;
		state <= state0;
		end
	else 
		begin
		case (velocity)
			2'b01 :  // 0.4 碼率
			begin
			bit_in	<= data_in; bit_in_en <= data_in_en;   // 輸入數(shù)據(jù)
			if(data_in_en)
				begin
				case (state)
					state0 :   //前35個符號,需要按順序?qū)edia寫初始信息
					begin
					if(media_en == 35'b10000_0000000000_0000000000_0000000000)
						begin
						state <= state1;
						media_en <= 35'd0;
						if(count_row == 0)   //最后一行最后一個矩信息,復(fù)位rom地址
							begin
							address_04 <= 10'd0;
							end
						else
							begin
							address_04 <= address_04+1'b1;
							end	
						end	
					else
						begin		
						address_04 <= address_04+1'b1;                 // 狀態(tài)地址累加
						media_en <= media_en << 1;                        //按順序更改35個運(yùn)算模塊的media_en,寫入初始信息
						end											
					end
					state1 :   // 后面輸入數(shù)據(jù),循環(huán)運(yùn)算即可,不需寫矩陣初始信息
					begin					
					if(count_127 == order)
						begin
						media_en <= 35'b00000_0000000000_0000000000_0000000001; //與第127個數(shù)據(jù)輸入同時(shí),寫入初始信息
						state <= state0;                                      
						end		
					end
				endcase
				end
			end
			
			2'b10 : // 0.6碼率
			begin
			bit_in	<= data_in; bit_in_en <= data_in_en;   // 輸入數(shù)據(jù)
			if(data_in_en)
				begin
				
				case (state)
					state0 :   //前23個符號,需要按順序?qū)edia寫初始信息
					begin
					if(media_en == 35'b00000_0000000100_0000000000_0000000000)
						begin
						state <= state1;
						media_en <= 35'd0;
						if(count_row == 0)   //最后一行最后一個矩信息,復(fù)位rom地址
							begin
							address_06 <= 10'd0;
							end
						else
							begin
							address_06 <= address_06+1'b1;
							end	
						end	
					else
						begin		
						address_06 <= address_06+1'b1;                 // 狀態(tài)地址累加
						media_en <= media_en << 1;                        //按順序更改35個運(yùn)算模塊的media_en,寫入初始信息
						end											
					end
					state1 :   // 后面輸入數(shù)據(jù),循環(huán)運(yùn)算即可,不需寫矩陣初始信息
					begin					
					if(count_127 == order)
						begin
						media_en <= 35'b00000_0000000000_0000000000_0000000001; //與第127個數(shù)據(jù)輸入同時(shí),寫入初始信息
						state <= state0;                                      
						end		
					end
				endcase
				end
			end
						
			2'b11 :
			begin
			bit_in	<= data_in; bit_in_en <= data_in_en;   // 輸入數(shù)據(jù)
			if(data_in_en)
				begin

				case (state)
					state0 :   //前35個符號,需要按順序?qū)edia寫初始信息
					begin
					if(media_en == 35'b00000_000000000_0000000001_0000000000)
						begin
						state <= state1;
						media_en <= 35'd0;
						if(count_row == 0)   //最后一行最后一個矩信息,復(fù)位rom地址
							begin
							address_08 <= 10'd0;
							end
						else
							begin
							address_08 <= address_08+1'b1;
							end	
						end	
					else
						begin		
						address_08 <= address_08+1'b1;                 // 狀態(tài)地址累加
						media_en <= media_en << 1;                        //按順序更改35個運(yùn)算模塊的media_en,寫入初始信息
						end											
					end

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩精品三区四区| 亚洲v精品v日韩v欧美v专区| 色域天天综合网| 免费在线观看视频一区| 国产精品美女一区二区三区| 欧美狂野另类xxxxoooo| 成人一区二区三区视频| 日韩av中文字幕一区二区三区| 国产欧美一区二区在线| 日韩午夜在线观看| 欧美在线|欧美| caoporen国产精品视频| 国产在线精品一区二区三区不卡| 亚洲制服丝袜av| 日韩一区在线播放| 亚洲国产电影在线观看| 欧美mv日韩mv国产| 欧美一级国产精品| 欧美日韩一区二区三区四区五区| www.日韩精品| 成a人片亚洲日本久久| 狠狠狠色丁香婷婷综合激情| 偷拍日韩校园综合在线| 一区二区三区加勒比av| 亚洲精品免费看| 亚洲少妇最新在线视频| 亚洲国产精品av| 久久精品亚洲乱码伦伦中文| 日韩欧美aaaaaa| 欧美一区二区三区免费观看视频| 欧美性xxxxxxxx| 欧美中文一区二区三区| 色婷婷精品久久二区二区蜜臂av| 精品奇米国产一区二区三区| 日韩三级视频在线观看| 91亚洲国产成人精品一区二区三 | 亚洲欧美自拍偷拍| 国产欧美视频在线观看| 国产亚洲成av人在线观看导航| 精品国免费一区二区三区| 欧美高清dvd| 9191精品国产综合久久久久久| 欧美午夜不卡在线观看免费| 在线观看亚洲一区| 在线观看亚洲精品视频| 一本色道久久综合亚洲aⅴ蜜桃 | 色一情一伦一子一伦一区| 成人免费高清视频| 99re视频这里只有精品| 不卡大黄网站免费看| 99re热这里只有精品视频| 91亚洲精品久久久蜜桃| 欧美午夜理伦三级在线观看| 欧美视频中文字幕| 在线综合视频播放| 日韩一级黄色片| www成人在线观看| 国产精品美日韩| 一二三四社区欧美黄| 舔着乳尖日韩一区| 九九久久精品视频| 成人99免费视频| 欧美色区777第一页| 91精品国产综合久久久久久久| 日韩视频在线永久播放| 久久欧美中文字幕| 国产欧美日韩亚州综合| 国产精品国产馆在线真实露脸 | 亚洲欧美偷拍三级| 18涩涩午夜精品.www| 亚洲一卡二卡三卡四卡无卡久久| 日韩精品免费专区| 国产精品88888| 在线视频综合导航| 精品乱人伦一区二区三区| 国产精品久久久久aaaa| 亚洲成a人v欧美综合天堂下载| 另类综合日韩欧美亚洲| av电影在线不卡| 欧美一区午夜视频在线观看| 国产日韩欧美精品电影三级在线| 自拍偷拍国产亚洲| 久久精品国产免费| 色丁香久综合在线久综合在线观看| 7777精品伊人久久久大香线蕉完整版 | 奇米精品一区二区三区四区| 国产做a爰片久久毛片| 在线观看一区不卡| 国产亚洲福利社区一区| 亚洲福中文字幕伊人影院| 国产在线精品国自产拍免费| 色综合色综合色综合色综合色综合 | 国产999精品久久| 欧美性感一类影片在线播放| 久久精品夜色噜噜亚洲aⅴ| 亚洲国产成人av| 成人性生交大合| 日韩欧美不卡一区| 亚洲国产综合色| 97精品久久久午夜一区二区三区| 日韩一区二区精品| 亚洲va国产va欧美va观看| 不卡一区二区在线| 亚洲精品一区二区三区精华液| 亚洲第一在线综合网站| av电影天堂一区二区在线| 久久影音资源网| 日韩激情一二三区| 欧美亚洲自拍偷拍| 中文字幕亚洲欧美在线不卡| 国产一区美女在线| 日韩欧美久久久| 亚洲高清久久久| 在线日韩国产精品| 亚洲视频在线观看三级| 国产精品一区免费视频| 欧美一级xxx| 日韩中文字幕不卡| 欧美日韩国产色站一区二区三区| 亚洲人成网站色在线观看| 国产成人av资源| 337p粉嫩大胆色噜噜噜噜亚洲| 日韩av中文字幕一区二区三区| 91福利在线看| 亚洲乱码国产乱码精品精98午夜| 成人国产精品免费观看动漫| 久久久久久久久久久久电影| 久久国内精品视频| 日韩精品中文字幕在线一区| 日韩高清不卡一区二区| 欧美日韩一区久久| 无码av免费一区二区三区试看| 色国产精品一区在线观看| 亚洲视频一区二区免费在线观看| av在线一区二区三区| 国产精品伦理在线| 99综合电影在线视频| 日韩一区有码在线| 日本道精品一区二区三区 | 激情五月婷婷综合| 精品国产乱码91久久久久久网站| 九九精品视频在线看| 亚洲精品一区二区在线观看| 国产一区二区三区四区五区入口| 久久免费看少妇高潮| 国产91在线观看丝袜| 国产精品国产三级国产aⅴ原创| 94-欧美-setu| 亚洲一二三区不卡| 欧美一区二区日韩一区二区| 久久精品国产亚洲一区二区三区 | 日韩欧美亚洲国产另类| 久久疯狂做爰流白浆xx| 久久精品在线免费观看| 波多野结衣视频一区| 亚洲三级在线免费观看| 欧美亚一区二区| 美女免费视频一区二区| 国产亚洲一区二区三区| av中文字幕亚洲| 亚洲成人精品影院| 精品福利视频一区二区三区| 国产成人自拍在线| 欧美日韩三级视频| 91精品国产一区二区三区蜜臀| 日韩专区在线视频| 26uuu国产日韩综合| 成人av中文字幕| 亚洲国产一区二区三区| 精品少妇一区二区三区免费观看| 国产成人在线视频播放| 亚洲精品欧美激情| 亚洲国产电影在线观看| 国产精品白丝在线| 亚洲综合色视频| 五月婷婷综合激情| 黑人精品欧美一区二区蜜桃| 成人国产亚洲欧美成人综合网| 91麻豆国产福利在线观看| 欧美日韩五月天| 欧美群妇大交群中文字幕| 日韩免费视频线观看| 国产亚洲欧美日韩俺去了| 91在线播放网址| 欧美日韩午夜影院| 欧美三级韩国三级日本三斤| 精品视频一区三区九区| 欧美日韩国产高清一区二区三区| 色婷婷国产精品| 欧美福利视频导航| 日韩欧美你懂的| 国产女人18毛片水真多成人如厕| 国产欧美一区二区精品性| 亚洲色图清纯唯美| 老司机午夜精品| 欧美亚洲国产一区二区三区 | 91久久人澡人人添人人爽欧美 | 国产经典欧美精品| 91精品91久久久中77777| 欧美精品一区二|