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

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

?? matrix_op.v

?? LDPC編解碼實用程序
?? 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;       //每一組編碼第一個數據輸入指示,便于處理相乘后直接存儲到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個符號輸入時同步輸入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時,選擇合適的行,列數
reg[5:0] count_row;	 // reg[4:0] count_col; // 行列計數器
reg[6:0] count_127;
reg	coder_first;

always @ (posedge clk)  // 計數器運轉
	begin
	if (!reset)
		begin
		count_127 <= 7'd0;
		coder_first <= 1'b0;
		case (velocity)
		  2'b01 : 	//0.4碼率
			begin					
			count_row <= 6'd23;  // 減法計數器
			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 :            // 默認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 :            // 默認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)   // 控制個運算模塊初始化等
	begin
	if (!reset)
		begin
		//coder_first <= 1'b0;
		bit_in	<= 1'b0; bit_in_en <= 1'b0;
		media_en <= 35'b00000_0000000000_0000000000_0000000001;     // 初始化時就寫入第一個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;   // 輸入數據
			if(data_in_en)
				begin
				case (state)
					state0 :   //前35個符號,需要按順序對media寫初始信息
					begin
					if(media_en == 35'b10000_0000000000_0000000000_0000000000)
						begin
						state <= state1;
						media_en <= 35'd0;
						if(count_row == 0)   //最后一行最后一個矩信息,復位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;                 // 狀態地址累加
						media_en <= media_en << 1;                        //按順序更改35個運算模塊的media_en,寫入初始信息
						end											
					end
					state1 :   // 后面輸入數據,循環運算即可,不需寫矩陣初始信息
					begin					
					if(count_127 == order)
						begin
						media_en <= 35'b00000_0000000000_0000000000_0000000001; //與第127個數據輸入同時,寫入初始信息
						state <= state0;                                      
						end		
					end
				endcase
				end
			end
			
			2'b10 : // 0.6碼率
			begin
			bit_in	<= data_in; bit_in_en <= data_in_en;   // 輸入數據
			if(data_in_en)
				begin
				
				case (state)
					state0 :   //前23個符號,需要按順序對media寫初始信息
					begin
					if(media_en == 35'b00000_0000000100_0000000000_0000000000)
						begin
						state <= state1;
						media_en <= 35'd0;
						if(count_row == 0)   //最后一行最后一個矩信息,復位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;                 // 狀態地址累加
						media_en <= media_en << 1;                        //按順序更改35個運算模塊的media_en,寫入初始信息
						end											
					end
					state1 :   // 后面輸入數據,循環運算即可,不需寫矩陣初始信息
					begin					
					if(count_127 == order)
						begin
						media_en <= 35'b00000_0000000000_0000000000_0000000001; //與第127個數據輸入同時,寫入初始信息
						state <= state0;                                      
						end		
					end
				endcase
				end
			end
						
			2'b11 :
			begin
			bit_in	<= data_in; bit_in_en <= data_in_en;   // 輸入數據
			if(data_in_en)
				begin

				case (state)
					state0 :   //前35個符號,需要按順序對media寫初始信息
					begin
					if(media_en == 35'b00000_000000000_0000000001_0000000000)
						begin
						state <= state1;
						media_en <= 35'd0;
						if(count_row == 0)   //最后一行最后一個矩信息,復位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;                 // 狀態地址累加
						media_en <= media_en << 1;                        //按順序更改35個運算模塊的media_en,寫入初始信息
						end											
					end

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品国产综合久久婷婷香蕉 | 99久久精品免费看国产免费软件| 视频一区中文字幕国产| 亚洲精品国产精华液| 亚洲裸体在线观看| 亚洲精品视频在线| 一级女性全黄久久生活片免费| 亚洲激情综合网| 亚洲成国产人片在线观看| 一区二区三区四区av| 香蕉久久夜色精品国产使用方法| 爽好多水快深点欧美视频| 日本va欧美va精品发布| 麻豆精品一区二区av白丝在线| 蓝色福利精品导航| 国产精品1024| 色狠狠色噜噜噜综合网| 欧美视频完全免费看| 日韩欧美中文一区二区| 久久精品亚洲一区二区三区浴池 | 国产suv一区二区三区88区| 风间由美一区二区三区在线观看 | 国产精品麻豆久久久| 中文字幕不卡三区| 亚洲国产一区视频| 国产一区二区三区在线观看免费 | 欧美一区二区三区性视频| 欧美不卡在线视频| 国产精品久久久久桃色tv| 亚洲国产精品精华液网站| 成人动漫一区二区三区| 91成人在线免费观看| 欧美乱熟臀69xxxxxx| 欧美精品一区二区三区在线 | 国内外成人在线| 色悠悠久久综合| 日韩欧美在线不卡| 亚洲欧美偷拍三级| 老司机免费视频一区二区三区| 99视频热这里只有精品免费| 欧美精品第1页| 国产精品毛片久久久久久| 日本欧美加勒比视频| av在线不卡免费看| 欧美一级免费观看| 亚洲色图一区二区三区| 久久国产精品区| 欧美在线观看禁18| 国产精品三级电影| 老司机精品视频线观看86| 在线观看视频欧美| 国产精品久久久久久一区二区三区 | 岛国精品在线播放| 日韩亚洲欧美在线| 亚洲一区免费在线观看| 成人福利视频网站| 亚洲精品一区二区三区99| 日本欧美在线观看| 欧美性感一区二区三区| 日韩一区在线看| 国产白丝精品91爽爽久久| 精品乱人伦小说| 美国一区二区三区在线播放| 欧美日韩国产天堂| 一区二区不卡在线播放| 一本久道久久综合中文字幕 | 一区二区三区日韩在线观看| 不卡免费追剧大全电视剧网站| 精品粉嫩aⅴ一区二区三区四区| 日韩电影在线一区| 欧美日韩亚洲综合| 午夜精品一区二区三区免费视频| 色先锋久久av资源部| 亚洲精品国产成人久久av盗摄| 成人黄色综合网站| 国产精品传媒入口麻豆| 成人不卡免费av| 一区在线中文字幕| 91麻豆免费观看| 一级特黄大欧美久久久| 欧美私人免费视频| 秋霞国产午夜精品免费视频| 91精品国产乱码| 久久爱另类一区二区小说| 精品国产伦一区二区三区免费| 久久99久久99| 国产日韩欧美激情| 91片黄在线观看| 亚洲超碰精品一区二区| 日韩视频一区二区三区 | 91成人网在线| 偷偷要91色婷婷| 日韩欧美成人午夜| 国产一区二区视频在线| 亚洲人成小说网站色在线 | 久久九九国产精品| 91在线观看免费视频| 亚洲第一在线综合网站| 日韩久久免费av| av电影一区二区| 夜夜揉揉日日人人青青一国产精品| 欧美人妇做爰xxxⅹ性高电影| 美女尤物国产一区| 国产蜜臀97一区二区三区| bt欧美亚洲午夜电影天堂| 亚洲国产成人porn| 久久久久久电影| 在线免费一区三区| 精品一区在线看| 亚洲欧美一区二区久久| 精品国产乱码久久久久久免费| 99在线精品视频| 免费观看在线综合| 亚洲欧美日韩国产手机在线| 欧美一卡二卡三卡四卡| 91免费版pro下载短视频| 久久精品国产99国产精品| 亚洲狠狠丁香婷婷综合久久久| 欧美tk—视频vk| 欧美在线观看视频一区二区| 国产精品影视在线| 天天影视色香欲综合网老头| 欧美激情在线免费观看| 欧美精品精品一区| 91久久精品一区二区| 国产精品资源网站| 人人狠狠综合久久亚洲| 亚洲免费色视频| 国产精品美日韩| 国产欧美一区视频| 日韩免费看的电影| 91.com视频| 欧美视频中文一区二区三区在线观看 | 欧美一卡在线观看| 欧美日韩一区成人| 色综合 综合色| 不卡一区二区三区四区| 精品在线你懂的| 青娱乐精品视频| 午夜精彩视频在线观看不卡| 亚洲激情图片一区| 国产精品成人免费在线| 国产精品网站导航| 久久美女艺术照精彩视频福利播放 | 色婷婷av一区二区三区大白胸| 国产成人在线视频免费播放| 黑人精品欧美一区二区蜜桃| 琪琪一区二区三区| 偷拍日韩校园综合在线| 亚洲国产综合91精品麻豆| 亚洲激情一二三区| 亚洲专区一二三| 亚洲图片欧美综合| 亚洲成人中文在线| 丝袜亚洲另类丝袜在线| 丝袜美腿亚洲色图| 秋霞电影一区二区| 久国产精品韩国三级视频| 韩日av一区二区| 国产精品91xxx| 成人蜜臀av电影| 97久久超碰国产精品| 在线免费观看成人短视频| 欧洲色大大久久| 欧美一区二区三区日韩| 欧美成人乱码一区二区三区| 久久久噜噜噜久久中文字幕色伊伊| 久久久不卡网国产精品二区| 久久精品日韩一区二区三区| 国产精品免费aⅴ片在线观看| 日韩二区三区在线观看| 日本不卡的三区四区五区| 精品一区二区影视| 不卡的电影网站| 欧美影院午夜播放| 日韩欧美aaaaaa| 中文字幕av不卡| 亚洲一区二区三区国产| 久久99久久99| 91在线观看成人| 欧美一区二区福利在线| 国产精品久久一卡二卡| 亚洲成人久久影院| 国产麻豆一精品一av一免费| 99v久久综合狠狠综合久久| 欧美日韩精品一区视频| 国产校园另类小说区| 亚洲最大成人综合| 国产乱子轮精品视频| 在线亚洲一区二区| 久久久蜜桃精品| 日韩在线卡一卡二| www.66久久| 日韩美女一区二区三区| 一区二区在线观看不卡| 国产尤物一区二区| 精品视频一区三区九区| 日本一区二区免费在线| 日本vs亚洲vs韩国一区三区| 色婷婷综合视频在线观看|