필요 VHDL 로직에서 처리하는 인터럽트에 대한 도움을

B

bibhuti_seoul

Guest
친구들,

내가 인터럽트에 대한 VHDL 로직 MICROWIRE CPU 인터페이스에서 개최합니다.제가 CPU를 interfce에 FPGA를했다.
데이터 시트 당 마찬가지로, 상태 레지스터를 업데이 트하고 마지막으로 상태 레지스터와 비교합니다.업데이트 상태를 등록할 경우에는 등록을 현재 상태를 다음 인터럽트를 생성 동일하지 않습니다.그리고 CPU가의 FPGA에서 출력되면.

이런 코드를 썼다

- 상태 등록 업데이트

프로세스 (mclk, load_status)
시작만약 mclk = '1 '을 입력한 다음 mclk'event
- 만약 power_up_activate = '1 '을 선택한 다음
만약 load_status = '1 '을 선택한 다음
dasl_status_update_reg "= dasl_status_reg;
elsif load_status = '0 '및 power_up_activate = '1'을 선택한 다음
dasl_status_update_reg "= dasl_status_update_reg;
elsif = '0 '를 클릭한 후 power_up_activate
dasl_status_update_reg "= dasl_status_update_reg;
최종면;

- 다른 dasl_status_update_reg "= (다른 분들에게도 ="'0 ');
- 마지막 경우;
최종면;
최종 처리;

- 인터럽트 세대 -----------------

프로세스 (mclk, rst_dasl)
시작
만약 rst_dasl = '0 '를 클릭한 후
int "= '1 ';
elsif mclk = '1 '을 입력한 다음 mclk'event
- 만약 mclk = '1 '을 입력한 다음 mclk'event
- 만약 power_up_activate = '1 '을 선택한 다음
만약 load_status = '1 '을 선택한 다음
dasl_status_update_reg면 / = dasl_status_reg 다음 - dasl_status_update_reg / = dasl_status_reg
int "= '0 ';
다른 사람 - 만약 dasl_status_update_reg / = dasl_status_reg 그때
int "= '1 ';
최종면;
다른 int "= '1 ';
최종면;

최종면;
최종 처리;

CPU를, 직렬 처리 - FPGA를 출력 -----------------

cpu_txprocess : (cclk) 프로세스
시작
만약 cclk = '0 '을 누른 다음 cclk'event
만약 cs = '1 '을 입력한 다음 - load_status
- cpu_status_reg_update "= (기타 ="'0 ');
- elsif cpu_reg_update = '1 '을 선택한 다음
cpu_status_reg_update "= dasl_status_update_reg; - dasl_status_reg

elsif cs = '0 '다음 - cpu_read

(6 downto 0) "cpu_status_reg_update (7 downto 1) cpu_status_reg_update =; - (6 downto 0) cpu_status_reg;
- (6 downto 0) "= dasl_status_reg (7 downto 1); - (6 downto 0) cpu_status_reg dasl_status_reg;
cpu_status_reg_update (7) "= '0 ';

최종면;
최종면;
최종 처리 cpu_txprocess;- CPU의 입력 FPGA를 직렬 처리 -----------------

cpu_rxprocess : (cclk) 프로세스
시작
만약 cclk = '1 '을 입력한 다음 cclk'event
- 만약 cpu_write = '1 '을 선택한 다음
cs = '0 '그리고 만약
cpu_control_reg "= CI 소개 & cpu_control_reg (7 downto 1);
최종면;
- 마지막 경우;
최종면;
최종 처리 cpu_rxprocess;

제발 .. 도와주세요
문제는
a.항상 출력 load_status 활성화하지 않고 온다.
만약 당신이 할 수 pls .. 도와주세요내가 DASL 칩 작업시

 
Na rynku pojawili się nowi operatorzy. Prawie każdy wie, że 260-01 to Polkomtel, 260-02 to PTC, a Centertel ma 260-03. A co z innymi?

Read more...
 

Welcome to EDABoard.com

Sponsor

Back
Top