문법 질문 : 문장을 사용할 때

N

neocool

Guest
안녕하세요, 어떻게 할 두 위치에서 구현 내가 뭔가를 같이 한 라인, DOUT 운전하지 이렇게 내가?

DOUT <= DO_higher (SAMPLE_WIDTH - 1 downto 0) (CSN = '0 '와 RDN = '0'와 Addr (

<img src="http://www.edaboard.com/images/smiles/icon_cool.gif" alt="시원한" border="0" />

= '1 ');
DOUT <= DO_lower (SAMPLE_WIDTH - 1 downto 0) (CSN = '0 '와 RDN = '0'와 Addr (

<img src="http://www.edaboard.com/images/smiles/icon_cool.gif" alt="시원한" border="0" />

= '0 ');

감사

 
솔루션은 다음과 중 하나 :
DOUT <= DO_higher (SAMPLE_WIDTH - 1 downto 0) CSN = '0 '와 RDN = '0'와 Addr () = '1 '싫다 DO_lower (SAMPLE_WIDTH - 1 downto 0) CSN = '0'및 RDN = ' 0 '과 Addr () = '0'싫다 DEFAULT_VALUE;

다른 방법 :
왜 그들 중 대신 프로세스 IF 문을 사용하지 진술에?

당신은 진술 과정은 다음과 바꿀 수있는 그들에 의해 :

프로세스 (CSN, RDN, Addr, DO_higher, DO_lower)
시작
그때 =면 (CSN '0 '과 RDN = '0'와 Addr () = '1 ')
DOUT <= DO_higher (SAMPLE_WIDTH - 1 downto 0);
elsif (CSN = '0 '와 RDN = '0'와 Addr () = '0 ') 다음
DOUT <= DO_lower (SAMPLE_WIDTH - 1 downto 0);
다른 사람
DOUT <= DEFAULT_VALUE가;
종료면;
최종 처리;

감사합니다
사의 KH

 
그래서, 그것은 ... 진술을 다른 사람의 허용 - 사용 - 다른 사람 -
내가 전에도 해봤지만, 실수를 추측 다른 몇 가지 제가 만들었어요, 그래서 컴파일 아니 그것.

한 클럭의 지연이다 이유 때문에 출력 난 이세에 래치를 추가 싶었을 방지하기 때문에 문장이 경우 프로세스 및.나는 내 안에 작은 디자인 수정 싶었던 지연이가 더 생성합니다.
과정에는 괜찮다면 안으로 제거하는 방법은 사용하는 아직 래치와?

감사합니다

 
래치를 도구는 것입 생성 합성 경우가 불완전한을 경우 성명.마찬가지로 다른 진술을 마지막으로 볼 수있는 코드, 래치를 만들 것을 방지합니다.당신은 DOUT 기본값을 위해해야 할당합니다.

프로세스 (CSN, RDN, Addr, DO_higher, DO_lower)
시작
그때 =면 (CSN '0 '과 RDN = '0'와 Addr () = '1 ')
DOUT <= DO_higher (SAMPLE_WIDTH - 1 downto 0);
elsif (CSN = '0 '와 RDN = '0'와 Addr () = '0 ') 다음
DOUT <= DO_lower (SAMPLE_WIDTH - 1 downto 0);

다른 사람DOUT <= DEFAULT_VALUE가;

종료면;
최종 처리;

감사합니다
사의 KH

 

Welcome to EDABoard.com

Sponsor

Back
Top