포트 맵에서 ... else statment를 사용할 때 어떤 것도 찾을 수 없습니다. 그것은 올바른 양식이 될 것 같지만 컴파일 할 때 다음과 같은 오류가 표시됩니다.when using else ... 포트 맵에있는 statment
오류 (10500) : "when"에 가까운 Device.vhd (68)에서 VHDL 구문 오류가 발생했습니다. expecting ")"또는 ","
아마 어리석은 실수 일 테니까요. 나는 아직도 VHDL에있어서 신선합니다. 이것에 대한 힌트를 좀 주시겠습니까? 나는 어떤 도움에 대해서도 매우 감사 할 것입니다. 다음은 코드와 SDA 포트는 입출력 유형 : 하나
com : I2C_com port map (
reset_en => reset_en,
I2C_clock_port => SCL,
clk => clk,
sda_read_data <= SDA when RD ='1' else 'Z',
sda_write_data => SDA
);
중간 신호를 사용하십시오. –
@Brian Drummond 감사합니다! –