예제 #1
0
        /// <summary>
        /// Synthesizes the design.
        /// </summary>
        /// <param name="destPath">target path which will contain the generated files</param>
        /// <param name="designName">name of the design</param>
        /// <param name="twinProject">optional twin project</param>
        /// <param name="step">what stages of the overall flow to execute</param>
        /// <returns>the generated ISE project</returns>
        public XilinxProject Synthesize(string destPath, string designName, IProject twinProject = null, EFlowStep step = EFlowStep.IPCores)
        {
            EISEVersion iseVersion = EISEVersion._11_2;
            ISEInfo     info       = ISEDetector.DetectMostRecentISEInstallation();

            if (info != null)
            {
                iseVersion = info.VersionTag;
            }
            return(Synthesize(destPath, designName, iseVersion, twinProject, step));
        }
예제 #2
0
        /// <summary>
        /// Synthesizes the design.
        /// </summary>
        /// <param name="destPath">target path which will contain the generated files</param>
        /// <param name="designName">name of the design</param>
        /// <param name="iseVersion">ISE version to generate for</param>
        /// <param name="twinProject">optional twin project</param>
        /// <param name="step">what stages of the overall flow to execute</param>
        /// <returns>the generated ISE project</returns>
        public XilinxProject Synthesize(string destPath, string designName, EISEVersion iseVersion,
                                        IProject twinProject = null, EFlowStep step = EFlowStep.HDLGenAndIPCores)
        {
            ISEInfo info = ISEDetector.LocateISEByVersion(iseVersion);

            if (info == null)
            {
                info = new ISEInfo()
                {
                    VersionTag = iseVersion
                }
            }
            ;
            return(Synthesize(destPath, designName, info, twinProject, step));
        }
예제 #3
0
        /// <summary>
        /// Constructs an instance.
        /// </summary>
        /// <param name="projectPath">path to the project file</param>
        /// <param name="projectName">project name</param>
        public XilinxProject(string projectPath, string projectName)
        {
            if (!Directory.Exists(projectPath))
            {
                Directory.CreateDirectory(projectPath);
            }

            ProjectPath = projectPath;
            ProjectName = projectName;
            ISEInfo info = ISEDetector.DetectMostRecentISEInstallation();

            if (info != null)
            {
                ISEVersion = info.VersionTag;
                ISEBinPath = info.Path;
            }
            PreInitializeProperties();
        }