ecu 61 sets exhaust gas rising mode target egr rate basic value megr0 obtained by multiplying standard target egr rate basic value megr0 and a correction coefficient 0 as target egr rate basis value megr0 megr0 megr0 u00d7 0 therefore ecu 61 stops egr when a malfunction avoiding mode is selected ecu 61 sets malfunction avoiding mode target egr rate basic value megr0 obtained by multiplying standard target egr rate basic value megr0 and a correction coefficient 0 8 as target egr rate basis value megr0 megr0 megr0 u00d7 0 8 fig3 is a flowchart for a calculation routine of a target egr rate which is executed by module m 5 of ecu 61 at step s 551 ecu 61 reads target egr rate basic value megr0 and intake system response time constant kkin at step s 552 ecu 61 executes a delay processing of target egr rate basic value megr0 using the following expression 19 which includes intake system response time constant kkin and stores the obtained value as megrd at step s 553 ecu 61 calculates target egr rate megr by executing an advance processing of megrd using the following expression 20 which employs gkeegr as a coefficient fig3 is a flowchart for a calculation routine of a target egr gas quantity which.