ConnectedInterface* toIface = AI_TO_CON(toCtlIface->getAssociatedIface());\r
QString toName = toIface->getOwner()->getName()+"_"+toIface->getName();\r
QString toCtlName = toCtlIface->getOwner()->getName()+"_"+toCtlIface->getName();\r
- QString dm1 = "";\r
QString dm2 = "";\r
- dm1.setNum(delayLength-1);\r
+ QString dm3 = "";\r
dm2.setNum(delayLength-2);\r
+ dm3.setNum(delayLength-3);\r
QString ret="";\r
QString clkName = "clk";\r
QString resetName = "reset";\r
ret += " "+toName+"_mod <= (others => '0');\n";\r
ret += " "+toCtlName+"_mod <= '0';\n";\r
ret += " elsif rising_edge("+clkName+") then\n";\r
- ret += " "+toName+"_mod <= "+toName+"_dly("+dm1+");\n";\r
- ret += " "+toCtlName+"_mod <= "+toCtlName+"_dly("+dm1+");\n";\r
+ ret += " "+toName+"_mod <= "+toName+"_dly("+dm2+");\n";\r
+ ret += " "+toCtlName+"_mod <= "+toCtlName+"_dly("+dm2+");\n";\r
ret += " "+toName+"_dly(0) <= "+fromIface->toVHDL(AbstractInterface::Instance,0)+";\n";\r
ret += " "+toCtlName+"_dly(0) <= "+fromCtlIface->toVHDL(AbstractInterface::Instance,0)+";\n";\r
- ret += " "+toName+"_dly(1 to "+dm1+") <= "+toName+"_dly(0 to "+dm2+");\n";\r
- ret += " "+toCtlName+"_dly(1 to "+dm1+") <= "+toCtlName+"_dly(0 to "+dm2+");\n";\r
+ ret += " "+toName+"_dly(1 to "+dm2+") <= "+toName+"_dly(0 to "+dm3+");\n";\r
+ ret += " "+toCtlName+"_dly(1 to "+dm2+") <= "+toCtlName+"_dly(0 to "+dm3+");\n";\r
ret += " end if;\n";\r
ret += " end process "+toName + "_mod_process;\n";\r
}\r
ret += " signal "+sig+"\n";\r
QString wStr="";\r
wStr.setNum(toIface->getWidth());\r
- ret += " signal "+toName+"_dly : vector_of_std_logic_vector"+wStr+"(0 to "+dm1+");\n";\r
- ret += " signal "+toCtlName+"_dly : vector_of_std_logic(0 to "+dm1+");\n";\r
+ ret += " signal "+toName+"_dly : vector_of_std_logic_vector"+wStr+"(0 to "+dm2+");\n";\r
+ ret += " signal "+toCtlName+"_dly : vector_of_std_logic(0 to "+dm2+");\n";\r
}\r
\r
return ret;\r