⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gpsnavidatagen_4ch.v

📁 基于verilog语言的GPS模拟源代码
💻 V
📖 第 1 页 / 共 5 页
字号:
	 			case (Sat1_NavBit_Cnt)	 				19: begin	 					case (Sat1_Subframe_Cnt)	 						0,1,2: NaviData1 <= 0;	 						3,4: NaviData1 <= 1;	 					endcase	 				end	 					 				20: begin	 					case (Sat1_Subframe_Cnt)	 						0,3,4: NaviData1 <= 0;	 						1,2: NaviData1 <= 1;	 					endcase	 				end	 					 				21: begin	 					case (Sat1_Subframe_Cnt)	 						1,3: NaviData1 <= 0;	 						0,2,4: NaviData1 <= 1;	 					endcase	 				end	 					 				default:	 					if (NB1)	 						NaviData1 <= ~NaviData1;	 						//NaviData1 <= 0;	 			endcase	 				 		NAVIDATAWORD:	 			if (NB1)	 				NaviData1 <= ~NaviData1;	 				//NaviData1 <= 0;	 	endcase	end`ifdef DEBUG_NAVIinitial  begin      i = 1;      j = 1;  end  always @(posedge in_clk) begin// 	if (i == 1)// 	  begin// 	  	$display("==============================================\n");// 	  	$display("subfram: %d\n", j);// 	  	$display("==============================================\n");// 	  	if (j==5)// 	  		j=1;// 	  	else// 	  		j = j+1;// 	  end 		if (NB1)	  begin	  	$display("NaviBit%d: %b\n", i, NaviData1); 	  	if (i==300)	  	  begin	  	  	$display("==============================================\n");	  	  	$display("subfram: %d\n", j+1);                                	  	  	$display("==============================================\n");	  		j = j+1;	  		i = 1;	  			      end	  	else	  		i = i+1;	  end end`endif// Generate the navigation data for satellite 2always @(posedge in_clk or negedge in_Resetn)	begin	 if (!in_Resetn)	 	NaviData2 <= 1;	 else	 	case (Sat2_status)	 		TLMWORD:	 			case (Sat2_NavBit_Cnt)	 				0,	 				4,	 				6,	 				7: NaviData2 <=1;	 					 				1,	 				2,	 				3,	 				5: NaviData2 <=0;	 					 				default: 	 				 if(NB2)	 				 	NaviData2 <= ~NaviData2;	 			endcase	 				 		PARITY:	 			case (Sat2_NavBit_Cnt)	 				24: NaviData2 <= Sat2_PrtW[0];	 				25: NaviData2 <= Sat2_PrtW[1];	 				26: NaviData2 <= Sat2_PrtW[2];	 				27: NaviData2 <= Sat2_PrtW[3];	 				28:                              	 					begin                        	 					 if (Sat2_Word_Cnt == 9)     	 					  NaviData2 <= 0;            	 					 else                        	 					  NaviData2 <= Sat1_PrtW[4]; 	 					end                          	 					                             	 				29:                              	 					begin                        	 					 if (Sat2_Word_Cnt == 9)     	 					  NaviData2 <= 0;            	 					 else                        	 					  NaviData2 <= Sat2_PrtW[5]; 	 					                             	 					end                          	 			endcase	 				 		HOWWORD:	 			case (Sat2_NavBit_Cnt)	 				19: begin	 					case (Sat2_Subframe_Cnt)	 						0,1,2: NaviData2 <= 0;	 						3,4:   NaviData2 <= 1;	 					endcase	 				end	 					 				20: begin	 					case (Sat2_Subframe_Cnt)	 						0,3,4: NaviData2 <= 0;	 						1,2:   NaviData2 <= 1;	 					endcase	 				end	 					 				21: begin	 					case (Sat2_Subframe_Cnt)	 						1,3:   NaviData2 <= 0;	 						0,2,4: NaviData2 <= 1;	 					endcase	 				end	 					 				default:	 					if (NB2)	 						NaviData2 <= ~NaviData2;	 			endcase	 				 		NAVIDATAWORD:	 			if (NB2)	 				NaviData2 <= ~NaviData2;	 	endcase	end// Generate the navigation data for satellite 3always @(posedge in_clk or negedge in_Resetn)	begin	 if (!in_Resetn)	 	NaviData3 <= 1;	 else	 	case (Sat3_status)	 		TLMWORD:	 			case (Sat3_NavBit_Cnt)	 				0,	 				4,	 				6,	 				7: NaviData3 <=1;	 					 				1,	 				2,	 				3,	 				5: NaviData3 <=0;	 					 				default: 	 				 if(NB3)	 				 	NaviData3 <= ~NaviData3;	 			endcase	 				 		PARITY:	 			case (Sat3_NavBit_Cnt)	 				24: NaviData3 <= Sat3_PrtW[0];	 				25: NaviData3 <= Sat3_PrtW[1];	 				26: NaviData3 <= Sat3_PrtW[2];	 				27: NaviData3 <= Sat3_PrtW[3];	 				28:                              	 					begin                        	 					 if (Sat3_Word_Cnt == 9)     	 					  NaviData3 <= 0;            	 					 else                        	 					  NaviData3 <= Sat3_PrtW[4]; 	 					end                          	 					                             	 				29:                              	 					begin                        	 					 if (Sat3_Word_Cnt == 9)     	 					  NaviData3 <= 0;            	 					 else                        	 					  NaviData3 <= Sat3_PrtW[5]; 	 					                             	 					end                          	 			endcase	 				 		HOWWORD:	 			case (Sat3_NavBit_Cnt)	 				19: begin	 					case (Sat3_Subframe_Cnt)	 						0,1,2: NaviData3 <= 0;	 						3,4:   NaviData3 <= 1;	 					endcase	 				end	 					 				20: begin	 					case (Sat3_Subframe_Cnt)	 						0,3,4: NaviData3 <= 0;	 						1,2:   NaviData3 <= 1;	 					endcase	 				end	 					 				21: begin	 					case (Sat3_Subframe_Cnt)	 						1,3:   NaviData3 <= 0;	 						0,2,4: NaviData3 <= 1;	 					endcase	 				end	 					 				default:	 					if (NB3)	 						NaviData3 <= ~NaviData3;	 			endcase	 				 		NAVIDATAWORD:	 			if (NB3)	 				NaviData3 <= ~NaviData3;	 	endcase	end// Generate the navigation data for satellite 4always @(posedge in_clk or negedge in_Resetn)	begin	 if (!in_Resetn)	 	NaviData4 <= 1;	 else	 	case (Sat4_status)	 		TLMWORD:	 			case (Sat4_NavBit_Cnt)	 				0,	 				4,	 				6,	 				7: NaviData4 <=1;	 					 				1,	 				2,

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -