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

📄 controller.vhd

📁 bch 编码和译码
💻 VHD
📖 第 1 页 / 共 2 页
字号:
						en_init_s<='0';						en_load_ps<='0';						en_all_ps<='0';						en_all_euclid<='0';						en_init_euclid<='0';		-----						en_all_sp<='0';						en_init_sp<='0';						en_sel_chien<='0';						en_all_chien<='0';						en_all_correct<='0';						en_read_memory<='0';						en_read_delay<='0';						en_write_delay<='0';						out_en<='0';	
					end if;					
					if cnt=N6 then						next_state<=init_euclid;					elsif cnt=N7 then						next_state<=ps_euclid_valid;					end if;								when ps_euclid_valid=>
				if ready='1'then									en_all_s<='0';					en_con_s<='1';					en_init_s<='0';					en_load_ps<='0';					en_all_ps<='1';					en_all_euclid<='1';					en_init_euclid<='0';					en_all_sp<='0';					en_init_sp<='0';					en_sel_chien<='0';					en_all_chien<='0';					en_all_correct<='0';					en_read_memory<='0';						en_read_delay<='0';					en_write_delay<='0';					out_en<='0';																  else
			  			en_all_s<='0';						en_con_s<='1';						en_init_s<='0';						en_load_ps<='0';						en_all_ps<='0';						en_all_euclid<='0';						en_init_euclid<='0';		-----						en_all_sp<='0';						en_init_sp<='0';						en_sel_chien<='0';						en_all_chien<='0';						en_all_correct<='0';						en_read_memory<='0';						en_read_delay<='0';						en_write_delay<='0';						out_en<='0';	
				end if;					if cnt>=N7 and cnt<N8 then						next_state<=ps_euclid_valid;					elsif cnt=N8 then						next_state<=euclid_valid;					end if;				 				 when euclid_valid=>		 -------------					if ready='1'then
					en_all_s<='0';					en_con_s<='1';					en_init_s<='0';					en_load_ps<='0';					en_all_ps<='0';					en_all_euclid<='1';					en_init_euclid<='0';					en_all_sp<='0';					en_init_sp<='0';					en_sel_chien<='0';					en_all_chien<='0';					en_all_correct<='0';					en_read_memory<='0';						en_read_delay<='0';					en_write_delay<='0';					out_en<='0';						else
						en_all_s<='0';						en_con_s<='1';						en_init_s<='0';						en_load_ps<='0';						en_all_ps<='0';						en_all_euclid<='0';						en_init_euclid<='0';		-----						en_all_sp<='0';						en_init_sp<='0';						en_sel_chien<='0';						en_all_chien<='0';						en_all_correct<='0';						en_read_memory<='0';						en_read_delay<='0';						en_write_delay<='0';						out_en<='0';	
					end if;					if cnt>=N8 and cnt<N9 then						next_state<=euclid_valid;					elsif cnt=N9 then						next_state<=init_sp;					end if;									when init_sp=>	  --------------------					if ready='1'then
					en_all_s<='0';					en_con_s<='1';					en_init_s<='0';					en_load_ps<='0';					en_all_ps<='0';					en_all_euclid<='1';					en_init_euclid<='0';					en_all_sp<='0';					en_init_sp<='1';					en_sel_chien<='0';					en_all_chien<='0';					en_all_correct<='0';					en_read_memory<='0';						en_read_delay<='0';					en_write_delay<='0';					out_en<='0';						else
						en_all_s<='0';						en_con_s<='1';						en_init_s<='0';						en_load_ps<='0';						en_all_ps<='0';						en_all_euclid<='0';						en_init_euclid<='0';		-----						en_all_sp<='0';						en_init_sp<='0';						en_sel_chien<='0';						en_all_chien<='0';						en_all_correct<='0';						en_read_memory<='0';						en_read_delay<='0';						en_write_delay<='0';						out_en<='0';	
					end if;					
					if cnt=N9 then						next_state<=init_sp;					elsif cnt=N10 then						next_state<=init_sp_over;					end if;								when init_sp_over=>									 						if ready='1'then
					en_all_s<='0';							  ----					en_con_s<='1';					en_init_s<='0';					en_load_ps<='0';					en_all_ps<='0';					en_all_euclid<='1';					en_init_euclid<='0';					en_all_sp<='0';					en_init_sp<='0';					en_sel_chien<='0';					en_all_chien<='0';					en_all_correct<='0';					en_read_memory<='0';						en_read_delay<='0';					en_write_delay<='0';						out_en<='0';					else
						en_all_s<='0';						en_con_s<='1';						en_init_s<='0';						en_load_ps<='0';						en_all_ps<='0';						en_all_euclid<='0';						en_init_euclid<='0';		-----						en_all_sp<='0';						en_init_sp<='0';						en_sel_chien<='0';						en_all_chien<='0';						en_all_correct<='0';						en_read_memory<='0';						en_read_delay<='0';						en_write_delay<='0';						out_en<='0';	
					end if;
					if cnt=N10 then						next_state<=init_sp_over;					elsif cnt=N11 then						next_state<=sp_euclid_valid;					end if;				when sp_euclid_valid=>					if ready='1'then
					en_all_s<='0';					en_con_s<='1';					en_init_s<='0';					en_load_ps<='0';					en_all_ps<='0';					en_all_euclid<='1';					en_init_euclid<='0';					en_all_sp<='1';					en_init_sp<='0';					en_sel_chien<='0';					en_all_chien<='0';					en_all_correct<='0';					en_read_memory<='0';						en_read_delay<='0';					en_write_delay<='0';					out_en<='0';						else
						en_all_s<='0';						en_con_s<='1';						en_init_s<='0';						en_load_ps<='0';						en_all_ps<='0';						en_all_euclid<='0';						en_init_euclid<='0';		-----						en_all_sp<='0';						en_init_sp<='0';						en_sel_chien<='0';						en_all_chien<='0';						en_all_correct<='0';						en_read_memory<='0';						en_read_delay<='0';						en_write_delay<='0';						out_en<='0';	
					end if;					if cnt>=N11 and cnt<N12 then						next_state<=sp_euclid_valid;					elsif cnt=N12 then						next_state<=init_chien;					end if;								when init_chien=>					if ready='1'then
					en_all_s<='0';					en_con_s<='1';					en_init_s<='0';					en_load_ps<='0';					en_all_ps<='0';					en_all_euclid<='0';					en_init_euclid<='0';					en_all_sp<='1';					en_init_sp<='0';					en_sel_chien<='1';					en_all_chien<='1';					en_all_correct<='0';					en_read_memory<='0';						en_read_delay<='1';	--------					en_write_delay<='0';					out_en<='0';					else
						en_all_s<='0';						en_con_s<='1';						en_init_s<='0';						en_load_ps<='0';						en_all_ps<='0';						en_all_euclid<='0';						en_init_euclid<='0';		-----						en_all_sp<='0';						en_init_sp<='0';						en_sel_chien<='0';						en_all_chien<='0';						en_all_correct<='0';						en_read_memory<='0';						en_read_delay<='0';						en_write_delay<='0';						out_en<='0';	
					end if;					if cnt=N12 then						next_state<=init_chien;					elsif cnt=N13 then						next_state<=chien_valid;					end if;									when chien_valid=>					if ready='1'then
					en_all_s<='0';					en_con_s<='1';					en_init_s<='0';					en_load_ps<='0';					en_all_ps<='0';					en_all_euclid<='0';					en_init_euclid<='0';					en_all_sp<='0';					en_init_sp<='0';					en_sel_chien<='0';					en_all_chien<='1';					en_all_correct<='1';	  ------					en_read_memory<='0';						en_read_delay<='1';					en_write_delay<='0';					out_en<='0';						else
						en_all_s<='0';						en_con_s<='1';						en_init_s<='0';						en_load_ps<='0';						en_all_ps<='0';						en_all_euclid<='0';						en_init_euclid<='0';		-----						en_all_sp<='0';						en_init_sp<='0';						en_sel_chien<='0';						en_all_chien<='0';						en_all_correct<='0';						en_read_memory<='0';						en_read_delay<='0';						en_write_delay<='0';						out_en<='0';	
					end if;					if cnt=N13 then						next_state<=chien_valid;					elsif cnt=N14 then						next_state<=correct_valid;					end if;								when correct_valid=>					if ready='1'then
					en_all_s<='0';					en_con_s<='1';					en_init_s<='0';					en_load_ps<='0';					en_all_ps<='0';					en_all_euclid<='0';					en_init_euclid<='0';					en_all_sp<='0';					en_init_sp<='0';					en_sel_chien<='0';					en_all_chien<='1';					en_all_correct<='1';					en_read_memory<='0';						en_read_delay<='1';					en_write_delay<='0';					out_en<='1';					else
						en_all_s<='0';						en_con_s<='1';						en_init_s<='0';						en_load_ps<='0';						en_all_ps<='0';						en_all_euclid<='0';						en_init_euclid<='0';		-----						en_all_sp<='0';						en_init_sp<='0';						en_sel_chien<='0';						en_all_chien<='0';						en_all_correct<='0';						en_read_memory<='0';						en_read_delay<='0';						en_write_delay<='0';						out_en<='0';	
					end if;					if cnt>=N14 and cnt<=N15 then		 -----						next_state<=correct_valid;					elsif cnt=N0 then						next_state<=mem_valid;					end if;									end case;			end process;state_register_pro:			process(clk,reset)				begin				if reset='1' then					present_state<=idle;
--				elsif ready='0' then			 --*----
--					present_state<=idle;		 ----				elsif clk'event and clk='1'  then					present_state<=next_state;				end if;			end process;																					end Behavioral;

⌨️ 快捷键说明

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